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

文件传输基础——Java IO流

难度入门
时长 2小时 0分
学习人数
综合评分9.67
669人评价 查看评价
9.9 内容实用
9.6 简洁易懂
9.5 逻辑清晰
自己序列化写进去的是怎么标识的呢?比如写入了stuage,实际是写了stuage的值比如写入int值40,那反序列化时怎么知道这个40就是stuage的值呢?writeInt()这个函数怎么做到的?

最新回答 / 慕粉4416224
length字符串的长度
这节确实有点错误。copyFile()这个方法中,只开辟了8KB的内存,用时7毫秒实际上是拷贝8KB数据的时间。方法中的代码:byte[] buf = new byte[8*1024]。可以将内存开辟大一点试试。实际上批处理的速度没有缓冲快。但是需要纠正的是,flush()这个方法应该最后执行,而不是放在循环体中。

最新回答 / 卖底环的超人
因为在Student类中,你没有创建toString()方法

最赞回答 / 慕粉4153413
鼠标放到DataInputStream上,按住Ctrl键的同时,单击鼠标左键

已采纳回答 / 舒方
c是整型,打印出来是一串整数   除非文件中没有内容
越看越难受,有木有,不是讲的不好,是自己进坑还浅啊,有些东西不是太理解,大脑很乱啊,理不清,,,,,,,,

最赞回答 / TobeyWu
因为你在复制到文件之前,通过  int c; while((c = isr.read())!=-1){ System.out.print((char)c); }给字节全部读完了,并打印出来,再次拿isr这个对象去read的时候,是读取不到字节了
喜欢这个老师,快听完这个板块了,感觉老师讲的很清楚!给赞!

最赞回答 / 慕神5045953
以File输入输出流举例,可以理解为read是程序或者控制台从文件读入内容,write是程序或者控制台写内容至一个文件以控制台为中心看待这些操作就记住了...

最新回答 / Jenichan
randomaccessfile是读写系统中现有的文件,而后者可以读现有文件也可以读不存在的文件,例如网络数据

已采纳回答 / Jenichan
因为十六进制数总共有4个字节的符号,我们为了美观,不要显示多余的符号而取有意义的数的时候我们就要跟我们获得的值的位数相&,这样前面的ffff就有消失,你可以去掉&0xff试试。

已采纳回答 / betME
一个字符根据编码方式的不同所需的字节数也不同,gbk编码的一个字符需要2个字节,而write方法是写入一个字节,因为系统会将后八位写入。
课程须知
亲,为了更好的学习本门课程,需要您对二进制的知识有所了解,还要熟悉Java的基本语法和面向对象的知识。
老师告诉你能学到什么?
1、了解文件编码。 2、能够对文件和目录进行管理操作。 3、能够应用字节流和字符流对文件进行读写操作。 4、能够对对象进行序列化和反序列化。

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消