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

文件传输基础——Java IO流

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

最新回答 / 小凡先森
简单点说,原来开辟空间之后输入的buf是Byte型,只有8位。现在要用Integer.toHexString把int型转化成字符型,这个函数括号里输入的一定要是int型也就是32位;为了不发生错误,就先用位与&把Byte型(只有8位)前面的24位全都变成0(比如:byte数据1011 1011&1111 1111 1111 1111....,按位运算,高位不足补0,1&1=1,1&0=0,0&0=0)。打个比方就是:8个乒乓球(byte数据)放到长度为32的筒状盒子...

已采纳回答 / 小Z文范
你的file是一个数组,可以通过file[index].getName()获得file下面的某个文件名。也可以通过Arrays.toString(file)输出指定路径下的所有文件和文件夹。

已采纳回答 / 大明狗
八位八位字节排好的数据序列例如:00000000  00000000  00000000...

已采纳回答 / lx1024ly
是的,应该是if(!file2.exit()){}

最新回答 / 大明狗
0x7fffffff占四个字节,被写入两遍,AB各占一个字节,中文占两个字节,加起来是12个字节。raf.write(gbk)是写入一个byte数组,长度为数组的长度。建议你看一看二进制的基本课程

最赞回答 / 哀幻暝
FileReader构造简单是不错,但是无法设置编码类型让它几乎没办法被使用

最赞回答 / Songlw
将Demo目录下的raf.dat后缀更改下就行了,改为.java , .doc , .txt 都OK。

已采纳回答 / langren1992
将判断条件写为if((buf[i] &0xff)<= 0xf)。这可能是因为buf[i]取到的数不止八位,这样buf[i]可能是负数了,所以这个判断条件成立了

已采纳回答 / 伏地炸毛
c是用作判断是否输出文本末尾的,并不是txt本身文本内容,你可采取其他方式获取文档中第一个字,PS:并且你取的是第一个字符,不是第一个字(汉字2字节)。
课程须知
亲,为了更好的学习本门课程,需要您对二进制的知识有所了解,还要熟悉Java的基本语法和面向对象的知识。
老师告诉你能学到什么?
1、了解文件编码。 2、能够对文件和目录进行管理操作。 3、能够应用字节流和字符流对文件进行读写操作。 4、能够对对象进行序列化和反序列化。

微信扫码,参与3人拼团

微信客服

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

帮助反馈 APP下载

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

公众号

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

友情提示:

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消