首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >我能偷看一下BufferedReader吗?

我能偷看一下BufferedReader吗?
EN

Stack Overflow用户
提问于 2010-03-26 01:00:02
回答 7查看 25.6K关注 0票数 21

有没有办法检查BufferedReader对象中是否有需要读取的内容?就像C++ cin.peek()一样。谢谢。

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2010-03-26 01:03:50

您可以尝试"boolean ready()“方法。从Java6API文档中可以看出:“如果缓冲区不为空,或者底层字符流准备就绪,则缓冲的字符流已准备就绪。”

BufferedReader r = new BufferedReader(reader);
if(r.ready())
{
   r.read();
}
票数 19
EN

Stack Overflow用户

发布于 2010-03-26 01:05:54

您可以使用PushbackReader。使用它,您可以读取一个字符,然后将其取消读取。这本质上允许您将其推回。

PushbackReader pr = new PushbackReader(reader);
char c = (char)pr.read();
// do something to look at c
pr.unread((int)c); //pushes the character back into the buffer
票数 39
EN

Stack Overflow用户

发布于 2010-03-26 01:03:30

下面的代码将查看Stream中的第一个字节。应该可以让你先睹为快。

BufferedReader bReader = new BufferedReader(inputStream);
bReader.mark(1);
int byte1 = bReader.read();
bReader.reset();
票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2517638

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档