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

文件传输基础——Java IO流

难度入门
时长 2小时 0分
学习人数
综合评分9.67
669人评价 查看评价
9.9 内容实用
9.6 简洁易懂
9.5 逻辑清晰
为什么我的是乱码啊,难道因为我的项目是UTF-8的原因
out.write(buf, 0, buf.length)其中的0指的是偏移量,是针对buf这个数组的,不是针对文件的位置。即从这个数组的第0处开始,写入buf.length长度的字节。
单字节真的读的好慢啊
比我们培训的老师讲的好多了,
讲的不错,总算对文件乱码有一个大概的认识了,以前只知道编码格式不对会乱码,却不知道为什么。
感觉Java基础和C语言基础大多数都相似

已采纳回答 / potatofootball
可以参考java入门第一季的第四章
transient 英[ˈtrænziənt]
美[ˈtrænziənt]
G[dʒi:] BK
感觉整个文件传输基础的讲解中错误都挺多的
fr.read(buffer,0,buffer.length)可以读取完整大小数据,直接用fr.read(buffer)读取文字没问题,在读取视频,图片是会出问题的

已采纳回答 / 慕粉3291149
因为 你是 Bar2 bar2 = new Bar2();   bar2 = (Bar2)ois.readObject();但是老师写的是   Bar2 bar2 = (Bar2)ois.readObject();  这里要注意的是 老师并没有去new一个Bar2对象而你却是先new出来的 肯定会调用父类的构造函数

最新回答 / hzhu
序列化主要是为了方便将对象保存到文件或进行网络传输,所以对文件大小和效率有较高的要求。默认序列化会把对象的所有字段都予以保存,自己序列化就可以去掉一些冗余的不需要保存或传输的部分,能够提高效率

最赞回答 / MaskTrueFeeling
read(buf,0,buf.length)   返回的是读取字节的长度。read()   没参数的   返回的是指针对应的下一个字节。

已采纳回答 / 三根
 new FileInputStream(file);如果文件不存在可以自动创建,但如果文件夹不存在它就会报错。exer这个文件夹要自己创建一下
课程须知
亲,为了更好的学习本门课程,需要您对二进制的知识有所了解,还要熟悉Java的基本语法和面向对象的知识。
老师告诉你能学到什么?
1、了解文件编码。 2、能够对文件和目录进行管理操作。 3、能够应用字节流和字符流对文件进行读写操作。 4、能够对对象进行序列化和反序列化。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消