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

文件传输基础——Java IO流

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

已采纳回答 / 一闪一闪大猩猩
0指的是read读取到的数据放入缓存数组buf的位置

已采纳回答 / 元气满满来学习
我搜了一下,UTF-8编码的中文字节数有争议,因为UTF-8是可变长编码。

已采纳回答 / xor丶T
读入缓冲区的字节总数,如果因为已经到达文件末尾而没有更多的数据,则返回 -1。详情见API文档

已采纳回答 / 东 崛
InputStreamReader流需要和其他流搭配使用,因为它是一个转换编码纽带,FileReader是InputStreamReader和其他流整合

已采纳回答 / 慕粉2043179507
fis.read()方法的返回值是什么?弄清楚这个你就明白了。返回值是int类型的整数,当read()完文件内容,就会返回-1。我是这么理解的。

已采纳回答 / 慕容5325647
你这里只是创建文件:“ext1.txt”,并打开流通道写到文件:“ext1.txt”,但是你没有东西写到文件:“ext1.txt”,你打开文件:“ext1.txt”,当然没有东西了,最好写入文件时刷新流通道且关闭流通道。

已采纳回答 / wschen
1、你检查一下代码,是否正确。2、也存在,不同IDE、或不同版本的代码编译后有不同输出结果。3、其实听课程,学习到的是文件读写过程的一个思路,但具体的执行过程,需具体分析、编码。

已采纳回答 / Posin丶biting
应该是把它读取到文件末尾然后将这一样以String的形式返回吧

已采纳回答 / 轻繁
其实可以等同使用,如FileOutputStream(new File(“e:\\javaIO\\test.txt”));表明文件的路径FileOutputStream(“e:\\javaIO\\test.txt”);路径以字符串表示

已采纳回答 / hmaccelerate
write方法一次只能写入一个字节的数据,然后那个i有4个字节

已采纳回答 / 落叶萧萧online
b这里可以不进行&0xff,因为源码里已经进行了该操作,另外我们读取的本身就是一个字节,所以只取低八位不会改变原来的结果,只是输出形态会有区别。

已采纳回答 / qq_顿首_0
看看你的项目的编码格式吧,我的是utf-8的,这样也是三位,视频里面的项目编码格式是GBK的

已采纳回答 / 慕粉1431473803
raf.read(buf)是没有返回值的,不能直接写到Arrays.toString()中。Arrays.toString()的括号中是要一个数组。raf.read(buf)的意思是读取文件的内容存放在buf中,不对请指教
课程须知
亲,为了更好的学习本门课程,需要您对二进制的知识有所了解,还要熟悉Java的基本语法和面向对象的知识。
老师告诉你能学到什么?
1、了解文件编码。 2、能够对文件和目录进行管理操作。 3、能够应用字节流和字符流对文件进行读写操作。 4、能够对对象进行序列化和反序列化。

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消