DataOutputStream类有write(int b)方法和writeInt()方法及DataInputStream类有read():int – FilterInputStream方法和readInt()方法,都是针对int类型的方法,我尝试着串着用一下,结果:
①写入用dos.writeInt(1),读取用int i= dis.read(),没问题,可以正常的输出正确的结果。 ②写入用dos.write(1),读取用int i =dis.readInt(),这时编译不会出错,但运行时就会报java.io.EOFException异常,说明在读取所有字节之前已经到达末尾了
我查了API文档,write()是“将指定字节(参数 b 的八个低位)写入基础输流。”;readInt()是“读取四个输入字节并返回一个 int 值。”,这样的话,应②正确啊??? |