已采纳回答 / langren1992
将判断条件写为if((buf[i] &0xff)<= 0xf)。这可能是因为buf[i]取到的数不止八位,这样buf[i]可能是负数了,所以这个判断条件成立了
2015-08-01
已采纳回答 / 伏地炸毛
c是用作判断是否输出文本末尾的,并不是txt本身文本内容,你可采取其他方式获取文档中第一个字,PS:并且你取的是第一个字符,不是第一个字(汉字2字节)。
2015-07-31
已采纳回答 / 管理員
if(bytes = in.read(buf,0,buf.length))!=-1相当于if(in.read(buf,0,buf.length)!=-1){//但是却不能这么写 bytes = in.read(buf,0,buf.length);}可以研究一下怎么看jdk源码如果读到了末尾会返回一个值“-1”,方法就是这么定义的。
2015-07-23
最新回答 / yangyang533
readpublic abstract int read() throws IOException从输入流中读取数据的下一个字节。返回 0 到 255 范围内的 int 字节值。如果因为已经到达流末尾而没有可用的字节,则返回值 -1。在输入数据可用、检测到流末尾或者抛出异常前,此方法一直阻塞。子类必须提供此方法的一个实现。返回:下一个数据字节;如果到达流的末尾,则返回 -1。抛出:IOException - 如果发生 I/O
错误。从API的理解来看,read是每次读取...
2015-07-15