为了账号安全,请及时绑定邮箱和手机立即绑定

文件传输基础——Java IO流

难度入门
时长 2小时 0分
学习人数
综合评分9.67
669人评价 查看评价
9.9 内容实用
9.6 简洁易懂
9.5 逻辑清晰

最新回答 / 落叶zb归根
java编码为utf-16be,此编码一个英文字母占两个字节,一个中文字符也占两个字节

已采纳回答 / 慕粉2137351520
char是两个字节16位,8*1024是8*1024个字节容量的数组,数组只是批量读取的容器

已采纳回答 / LioHD
private void writeObject(java.io.ObjectOutputStream s)throws java.io.IOException{ s.defaultWriteObject();//把虚拟机默认能序列化的元素 进行序列化 s.writeUTF(str); }private void readObject(java.io.ObjectInputStream s)throws java.io.IOException,ClassNotFoundException{ s.de...

最新回答 / 慕粉2137351520
尝试回答一下,首先是utf-16be编码中英文都是两个字节,那么就是根据指针两个两个字节编译;utf-8编码时中文占三个字节,英文占一个字节,设想一下,首先也是按照指针,应该有个先后编译顺序,假设英文优先,就是先尝试编译一个字节,若失败,则尝试编译三个字节,成功则编译成一个汉字,失败则编译成乱码,循环下去,当然实际情况可能复杂的多,编码的方式也就像是一个封装,不用考虑太多。

最新回答 / KKWong
编码问题,你看看你工程的编码和你输出保存文件的编码是不是一致.

已采纳回答 / 橡树的绿叶
大哥  你遍历都是同一个 也就是第一个   for(byte b3:bytes){}  for(byte b2:bytes){}   for(byte b:bytes){}

最新回答 / 许玮琛
我想应该是我原来添加了的字节没有在文件里进行删除,只是在编译器里面的删除了,所以文件当中还有11个字节。

已采纳回答 / 海风3
一直循环着读,比如你写的byte为10,while循环读取输出一次,返回不是-1再次进入循环,知道in.read(buf, 0, buf.length)这个方法读到文件最后,这个方法返回-1,循环结束。这种模式不是一直读最后输出,而是读一点,然后输出,在读一点

已采纳回答 / 一闪一闪大猩猩
0指的是read读取到的数据放入缓存数组buf的位置
课程须知
亲,为了更好的学习本门课程,需要您对二进制的知识有所了解,还要熟悉Java的基本语法和面向对象的知识。
老师告诉你能学到什么?
1、了解文件编码。 2、能够对文件和目录进行管理操作。 3、能够应用字节流和字符流对文件进行读写操作。 4、能够对对象进行序列化和反序列化。

微信扫码,参与3人拼团

微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消