已采纳回答 / zjxjwxk
我这里用你的没有一点问题诶 是不是main函数有问题你把序列、反序列封装成函数,那我的main函数是这样的:ObjectOutputStream oos = new ObjectOutputStream( new FileOutputStream("demo/obj2.dat") ); Bar2 bar2 = new Bar2(); oos.writeObject(bar2); oos.flush(); ...
2018-02-24
最赞回答 / kk求知者
因为你的编码方式是默认的编码方式utf-16be 而在写入“中” 这个汉字是 转换为字节数组是 采用的是GBK编码方式 byte[] gbk=s.getBytes("gbk"); 所以在文件中 存在2个GBK编码方式的字节。而在后面的读时 用的是默认的编码方式将文件里的提取出所有的。而又2个不是这种了类型的 则会出现乱码. 个人理解
2018-02-10
已采纳回答 / qq_向前走呗_0
java中指针的概念是隐式的,指向文件中的某个字节,当打开文件时候,指针指在文件开头,pointer=0,每一次向文件中output字节,指针都会移动,Xxx.seek(0); 是让指针回到文件头部。
2018-02-09
最赞回答 / 噩噩噩噩噩噩噩噩Plus
那是因为你没有在类中创建toString()函数public String toString() { return id+" "+name+" "+age; }
2018-02-05