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

文件传输基础——Java IO流

难度入门
时长 2小时 0分
学习人数
综合评分9.67
669人评价 查看评价
9.9 内容实用
9.6 简洁易懂
9.5 逻辑清晰
一楼居然被赞最多,这明显是误解。其实视频中写read(buffer)完全可以。以下是源码
public int read(byte b[]) throws IOException {
return readBytes(b, 0, b.length);
}
很明显read(byte b[]) 调用了readBytes(b, 0, b.length)。

最赞回答 / 慕标5802213
1)序列化(Serialization):        在分布式环境下,无论是何种数据,都会以二进制序列的形式在网络上传输。序列化是一种将对象以一连串的字节描述的过程,用于解决在对对象流进行读写操作时所引发的问题。序列化可以将对象的状态写在流里进行网络传输,或保存在文件、数据库里,并在需要时把该流读取出来重新构造一个相同的对象。要实现序列化的类必须实现Serialization接口(位于java.lang包中);使用一个输出流(如FileOutputStream)来构造对象流(如ObjectOutput...
谢谢老师,对IO这边有了更深层次的理解了

最新回答 / Yaro
添加图片是需要把文件传进来,转换成流写入到你要存储的位置。删照片直接用file的delete方法就可以了。至于怎么把流转换成图片,继续往后看吧!方法千千万!

最新回答 / 慕粉4188041
创建的不是在f盘里,这样创建才是在f盘里:(new File("f:\\123.txt")。(new File("f\\123.txt"), 这样是在工程路径下创建的需要按f5刷新,就会出现。
常用中文字符用utf-8编码占用3个字节(大约2万多字),但超大字符集中的更大多数汉字要占4个字节(在unicode编码体系中,U+20000开始有5万多汉字)。
在使用 DataInputStream.readUTF()时候,报错 java.io.EOFException 求解
这节中用例子让我们了解了什么是编码的概念

已采纳回答 / 透过眼镜的脸
getBytes()方法是将一个字符串转化为一个字节数组byte[]的方法,使用的是默认的UTF-8编码表进行转换的。byte是数据类型,不是进制类型,没有说是二进制。java的byte是-128~127区间,所以说转换成十六进制没毛病。
谢谢老师,讲的很好,受益匪浅
感觉有点不对劲吧,循环里面flush那岂不是读一个就清空缓冲区立刻写入到目标文件,这样就和读一个写一个的普通inputStream和OutputStream没区别了,个人理解,不知道是不是有误

已采纳回答 / chrealcool
是数据长度。是in.read读取文件存放在buf中的长度,你代码中输出bytes看下就知道了。估计你是把数据和长度搞混了把数据是存放在buf字节数组中,即老师代码中输出buf[i]
从文件中读取数据到内存中成为读read,也就是对应输入流;从内存中把数据存储到文件中就是写write,也就是对应输出流
hhhhhhhh
课程须知
亲,为了更好的学习本门课程,需要您对二进制的知识有所了解,还要熟悉Java的基本语法和面向对象的知识。
老师告诉你能学到什么?
1、了解文件编码。 2、能够对文件和目录进行管理操作。 3、能够应用字节流和字符流对文件进行读写操作。 4、能够对对象进行序列化和反序列化。

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消