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

文件传输基础——Java IO流

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

最新回答 / 我是叶霖
老师写的是字符串数数组,将读取的内容放在字符串数组中,不需要缓冲区当你使用BufferedInputStreams时候需要用到缓冲区,这个时候在写.fiush();

最新回答 / 抗震性能
把在Eclipse 下面 Console关了(那个X)再重新运行就可以了。

最新回答 / RPiswand
10在倒数第五行最后一个啊。。。。

最赞回答 / qq_安居旧巷猫患者_0
因为Java重载了几个read方法   每个方法返回的值有所不同  你写的这个调用他返回的就是读取到的字节的长度  也就是实际读取到了多少个字节以上是个人理解

最赞回答 / 一枚flora
就是通过while循环,read的指针不断往后移,开始是开足马力每次都length长度,只有可能到最后一次,read不足length。由此实现只需要开辟一个很小空间的byte[]就可以读入很多的字节

最新回答 / 美丽金
buf中存的是整数的补码,String s2 = new String(buf)解码用的是项目默认的编码,所以会烂码

最新回答 / deyin_Karl
b和1111 1111 1111 1111相与前边位数为0

最赞回答 / 九尾猿
java 中的string 是不可变的,write的时候虽然右移了但是并没有改变 str1本身,而是重新创建了一个右移后的字节,因此不会有你说的问题。不知道这样讲明白么?

最新回答 / 阿双otw
RandomAccessFile 一次只能写一个字节,"a"是个字符串,可以换成'a'或者"a".getBytes();getBytes()方法可以设置编码类型如gbk,utf-8等

最新回答 / 脑门不好使
问问题的时候可以把代码放出来这样的话好解决 嘿嘿

最新回答 / qq_一花一世界_0
可能没权限,你右键用管理员权限运行下试试看

最新回答 / 我是叶霖
0到buf.length的长度是你定义的byte数组的长度你一次性最多读取的字节长度是byte数组长度,但是你的文件字节数往往是多于你定义的byte数组长度所以就用到了for循环,0xff是取低八位,八位为一个字节!!!望采纳QAQ
课程须知
亲,为了更好的学习本门课程,需要您对二进制的知识有所了解,还要熟悉Java的基本语法和面向对象的知识。
老师告诉你能学到什么?
1、了解文件编码。 2、能够对文件和目录进行管理操作。 3、能够应用字节流和字符流对文件进行读写操作。 4、能够对对象进行序列化和反序列化。

微信扫码,参与3人拼团

微信客服

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

帮助反馈 APP下载

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

公众号

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

友情提示:

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消