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

文件传输基础——Java IO流

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

最新回答 / stt54321
in.read(buf, 0, buf.length)这个方法不是一次性读完了嘛?首先对于你的这个理解是错误的,因为这个方法正确的理解是把文件内容的字节读入到字节数组buf中,但是文件内容的字节有可能大于字节数组buf的长度,那么文件内容就一次读不完。in.read(buf, 0, buf.length)这个方法可能为-1吗再来说说这个方法的返回值,这个方法返回的是实际读取到字节数组中的字节的数量。官方api明确指出,如果已经达到文件的末尾,返回值为-1.

最新回答 / helloworld2008
你读出来的字节序列是不是对的?然后转换成字符串输出就是乱码?

最新回答 / leowei
其实写入'a' 不会干扰,写入'a'的后8位正好符合gbk编码,而是中间写入了int数,这个收到了干扰。

最赞回答 / 黄VS金
你用的是笔记本吗?如果是的话,说不定是你的手碰到了触屏。。

已采纳回答 / 别路Biello
你好,你的 printHex()函数写的有问题,你一开始只读了一个字节,while循环中b一直是68,不会等于-1,所以一直输出68,在while循环最后加一句b=in.read();就可以了<...code...>

已采纳回答 / _神人A
同样条件下,是应该Buffer比普通的读取快,但不是最快的,最快是用FileInputStream的getChannel()方法去读取。你可以运行下面的那段代码去对比下就知道了。<...code...>下面是运行结果:运行copy file 的普通方法需要的时间是: 94毫秒运行copy file 的buffer普通方法需要的时间是: 62毫秒运行copy file 的getChannel()方法需要的时间是: 16毫秒

已采纳回答 / imoe2010
点击那个Attach Source,在对话框中选External location,找到你的jdk路径里边的src.zip添加进去,就可以了

已采纳回答 / 乐乐Yami
如果这个空文件有名字但里面的内容是null就可以打印出来,如果这个空文件本身就没有名字是不可见的,则不能打印出来

已采纳回答 / 木D羊
 RandomAccessFile raf=new RandomAccessFile(file, "rw")应该改为: RandomAccessFile raf=new RandomAccessFile(file2, "rw");file是个目录,不是文件,不可以进行读写操作

已采纳回答 / isunym
你要先下载好rt.jar.src,然后双击write()这个方法,进去,点击Attach Source,选择External location,选择External File,选择rt.jar.src路径,添加进去之后,再回到代码那里,双击write()方法进去就可以看到源码了。源码下载地址:http://download.csdn.net/download/czqiang007/5883777以后需要源码的地方都可以这样添加,希望可以帮助到你!

已采纳回答 / 慕后端2198842
一个对象一个对象地序列化存进文件,反序列化的时候也一样,一个对象一个对象往外读,先存的先读出来,后存的后读出来。跟字节字符的读写同理

最赞回答 / 宋杰
第一:你首先要搞明白编码问题。编码说白了解决的就是字符如何转换成字节(编码)以及字节如何转换成字符(解码)。第二:java IO分为字节流和字符流。字节流和字符流都有很多的实现类,用于不同的场景。第三:为了性能和方便性等考虑,java IO使用的装饰者模式对一些类进行了装饰。如果不知道装饰者模式,请先了解一下。
课程须知
亲,为了更好的学习本门课程,需要您对二进制的知识有所了解,还要熟悉Java的基本语法和面向对象的知识。
老师告诉你能学到什么?
1、了解文件编码。 2、能够对文件和目录进行管理操作。 3、能够应用字节流和字符流对文件进行读写操作。 4、能够对对象进行序列化和反序列化。

微信扫码,参与3人拼团

微信客服

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

帮助反馈 APP下载

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

公众号

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

友情提示:

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消