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

文件传输基础——Java IO流

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

最新回答 / 涅米
byte是一个字节,是数据的基本单位,那bytes当然就是字节的复数啦。学IO之前可以先去学习一下二进制有关的知识,便于理解。(慕课网也有二进制的视频,但是那个老师的表达能力不太好。。可以去百度找找)

最新回答 / 滞秉
writeInt(int v)           将一个 int 值以 4-byte 值形式写入基础输出流中,先写入高字节。数字是以16进制写入的

最新回答 / 追梦21
byte类型8位 int类型23位 为避免数据转换错误  用&0xff将高24位清零Integer.toHexString(buf[i] & 0xff)

最新回答 / define_ray
0xf是十六进制单位数最大的。相当于十进制的9。如果按十进制来看就是if(b <= 9),就是个单位数,要在前面补0,来输出两位数,明白了吧?

最赞回答 / qq_皇甫铁牛_03812671
public class FileIO { public static void main(String[] args) throws Exception { File file = new File("E:\\workspace\\hello\\a.txt"); //这里向a.txt写入2 FileOutputStream fo = new FileOutputStream(file, true); fo.write(2); fo.close(); //这里打印a.txt写入2之后的编码 ...

最新回答 / ,_0022
查看API文档可知:00 06代表的是“中国”所占字节数,共6个,而读出时不会理会这两个字节,读出的仍是“中国”,不知这样解释你是否明白,注意多看官方API文档。

已采纳回答 / 慕粉1431473803
raf.read(buf)是没有返回值的,不能直接写到Arrays.toString()中。Arrays.toString()的括号中是要一个数组。raf.read(buf)的意思是读取文件的内容存放在buf中,不对请指教

最赞回答 / Lx_21
第二个的单位数补0的if条件有问题:这样写试试? if((buf[i] & 0xff)<=0xf) { System.out.print("0"); }

最新回答 / 一切都是浮云丶
还有就是我写入一个对象后文件占43字节,写入2个对象后文件占48字节,写入3个对象后文件占53个字节......

最新回答 / qwertyuioplkjh
那为什么中间会出现乱码,怎么样能显示中间的int
课程须知
亲,为了更好的学习本门课程,需要您对二进制的知识有所了解,还要熟悉Java的基本语法和面向对象的知识。
老师告诉你能学到什么?
1、了解文件编码。 2、能够对文件和目录进行管理操作。 3、能够应用字节流和字符流对文件进行读写操作。 4、能够对对象进行序列化和反序列化。

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消