已采纳回答 / 六月熊
UTF-8中,前面两个字符表示数据占用的字节数。eg: dos.writeUTF("中国中国"),运行结果前面两位就会为00 0c。即"中国中国"占用12个字节。还望采纳!
2016-09-11
最新回答 / 粒子酱
public static void main(String[] args) throws IOException{ // TODO Auto-generated method stub FileInputStream in = new FileInputStream("D:\\javaio.txt"); InputStreamReader isr = new InputStreamReader(in); int c; while((c=isr.read())!=-1); System.ou...
2016-09-11
已采纳回答 / 侧耳听
while ((b=fin.read())!=-1)判断的是fin.read()是否读到最后,而且每次判断都会重新给b赋值,这里主要是read()会一个一个往下读取。int b =fin.read();while(b!=-1)这里只给int b赋值一次,这里只判断b里面的值,如果b不等于-1不就一直打印一个嘛。
2016-09-08
最赞回答 / 甯俊
wirtein (i)写入的是4个字节32位二进制数write( i )写入的是1个字节8位二进制数System.out.println(xxx.getgetFilePointer());获得当前光标所在位置
2016-09-08
已采纳回答 / 渴望飞翔的猪
你实现了Serializable接口,但没有为其指定ID?在代码里加上这段定义看看:private static final long serialVersionUID = -3286564461647015367L;
2016-09-05
已采纳回答 / IJN
本来Java的IO这块就比其它语言复杂,很多概念不是一下子就能懂,如果没理解这些概念那么IO这块就基本是迷迷糊糊。这个课程条理还是挺清晰的,要理解Java的IO确实应该先理解编码,编码的大概就是用字节来表示字符。计算机存储的是字节,一个字节一个字节存起来的,我们看到的是字符,许多字符在一起就是一段文字。字节怎么表示字符就是编码问题了。Java的InputStream之类的是处理字节流的,InputStreamReader这些是处理字符流的,我们知道了字节需要转换成字符才能表示成我们所理解的文字,那么Inp...
2016-09-01
已采纳回答 / 罗汉爷
因为累IOUtil中定义的是静态方法:public static void printHex。对于一般的非static成员变量或方法,需要有一个对象的实例才能调用,所以要先生成对象的实例,他们才会实际的分配内存空间。而对于static的对象或方法,在程序载入时便已经分配了内存空间,他只和特定的类想关联,无需实例化。
2016-08-27
已采纳回答 / 慕祈
io流中抛出异常是一种保护机制,保证程序不会异常中断,降低损失。因为可能就是文件在传输过程中遇到异常情况(如:机器坏了,主文件没了),无法成整个流程,这个时候就会出现异常。
2016-08-27