当前位置: 代码迷 >> J2SE >> 从缓存中读数据的有关问题
  详细解决方案

从缓存中读数据的有关问题

热度:56   发布时间:2016-04-23 21:45:46.0
从缓存中读数据的问题
BufferedReader br = new BufferedReader(new InputStreamReader(
socket.getInputStream(), "ISO-8859-1"));//读取返回信息
char rt[] = new char[2];
int length = br.read(rt, 0, 2);

按照代码,如果缓存中没有数据,br、rt[]、length分别是什么值?
缓存 java bufferreader

------解决方案--------------------
br就一个读缓冲流;rt[]={0,0}(打印的话,会显示两个框框);length为-1
------解决方案--------------------
引用:
自己做了一下实验,只有在socket连接断开的时候,控制台才显示出length为-1.否则一直没有数据输出。

还想问一下怎么判断缓存为空呢?

InputStream in=socket.getInputStream(),
int bufferSize=in.available();
if(bufferSize==0){
System.out.println("The socket buffer is empty");

  相关解决方案