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

文件传输基础——Java IO流

难度入门
时长 2小时 0分
学习人数
综合评分9.67
669人评价 查看评价
9.9 内容实用
9.6 简洁易懂
9.5 逻辑清晰
  • RandomAccessFile类 是java提供的对文件内容的访问 byte[] buf = new byte[(int)raf.length()]; raf.read(buf) 内容在raf中,通过read按字节传入buf[] Arrays.toString()的作用是用来很方便地输出数组,而不用一个一个地输出数组中的元素
    查看全部
  • 一个类要序列化,就要实现Serializable接口,反过来说,不实现Serializable就不能序列化 当父类没实现Serializable接口,子类继承父类并实现Serializable接口,子类序列化时,父类的部分是没有被序列化的,那么反序列化的时候就没办法找到父类的部分,这时候怎么办呢,就调用父类构造器初始化父类部分。
    查看全部
  • 对于子类对象进行反序列化的时候,如果父类没有实现序列化接口,那么父类的构造函数就会被显示的调用。如果父类实现了序列化接口,那么反序列化子类的时候父类的构造函数就不会被显示的调用。
    查看全部
  • transient关键字可以使属性不被JVM序列化,但是并不代表这个属性是不可以被序列化的,如果有需要的话可以我们自己做序列化操作,ArrayList中的Object数组就有transient关键字,这是因为这个数组里面的数据并不一定是满的,所以作者向仅仅序列化数组里面的有效数据,所以自己做了序列化操作。
    查看全部
  • 对象的序列化和反序列化,redis缓存中拿数据就需要将字节数组反序列化成对象。在网络中传输对象时也是传输的字节,所以一样需要将对象进行序列化的操作,所以都要实现seriliserble接口。
    查看全部
  • BufferedReader和BufferedWriter,printWriter三个类的特点是可以对文件进行一行一行的读取和写入操作,更方便一些
    查看全部
  • InputStreamReader和OutputStreamWriter主要用于文本文件的读取和写入操作,因为他们都能继承了Reader和Writer两个抽象类,都是针对字符进行操作的,如果读取的文件不是文本文件的话是没有任何意义的。
    查看全部
  • BufferedInputStream和BufferedOutputStream的特点是使用了缓冲区,使得文件的读取和写入操作有了一个缓冲区,不再像FileoutputStream那样一个一个字节一个字节的操作,所以缓冲输入输出流的效率会更高一些。
    查看全部
    0 采集 收起 来源:字节缓冲流

    2017-08-05

  • 输入输出流的两个抽象类是intputstream和outputstream,常用的两个子类是FileInputStream和FileOutputStream,主要用于文件的读取和写入操作,而DataInputStream和DataOutputStream两个类主要用于FileInputstream和Fileoutputstream的补充操作,多加了几个方法便于文件的读写操作,其实都只是封装了一下这两个类的方法而已。
    查看全部
  • randomAccessFile对文件进行读写操作的类
    查看全部
  • file类中提供了遍历指定文件夹下一层的所有文件名的方法,和所有File类文件的方法,但是没有提供指定文件夹下的所有文件(包括子目录的文件),所以想要所有文件需要自己写一个递归调用。
    查看全部
    0 采集 收起 来源:遍历目录

    2017-08-05

  • 目录的路径要写两个\\,因为\是转义字符
    查看全部
  • utf-8一个汉字是3个字节,gbk一个汉字是两个字节,eclipse中的项目是什么样的编码,这个项目就只能识别出这个编码的内容,如果是gbk的编码项目是不能识别出utf8的文件内容的,会出现乱码问题。所以用什么样的编码方式生成的文件就同样要用什么样的编码格式去解析这个文件。读文件时就需要根据同样编码格式读取文件的所有字节并转换成字符。
    查看全部
    0 采集 收起 来源:文件的编码

    2017-08-05

  • 字节流总结(2) FileInputStream/FileOutputStream 每次一个字节的读写 DataInputStream/DataOutputStream 每次一个类型数据的读写。如:一次写入一个int类型的数据,相当于一次写入四个字节。 BufferedInputStream/BufferedOutputStream 每次读写一个缓冲区大小的数据。每次写入时必须调用实例的flush()方法来清空缓冲区。 读写效率对比:使用字节数组作为缓冲的流 > 使用原生缓冲的流 > 不使用缓冲的流
    查看全部
    0 采集 收起 来源:字节缓冲流

    2018-03-22

  • 字节流总结 从应用程序中把输入放入文件,相当于将一缸水倒入到另一个缸中: FileOutputStream--->write()方法相当于一滴一滴地把水“转移”过去 DataOutputStream-->writeXxx()方法会方便一些,相当于一瓢一瓢把水“转移”过去 BufferedOutputStream--->write方法更方便,相当于一飘一瓢先放入桶中,再从桶中倒入到另一个缸中,性能提高了
    查看全部
    0 采集 收起 来源:字节缓冲流

    2018-03-22

举报

0/150
提交
取消
课程须知
亲,为了更好的学习本门课程,需要您对二进制的知识有所了解,还要熟悉Java的基本语法和面向对象的知识。
老师告诉你能学到什么?
1、了解文件编码。 2、能够对文件和目录进行管理操作。 3、能够应用字节流和字符流对文件进行读写操作。 4、能够对对象进行序列化和反序列化。

微信扫码,参与3人拼团

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

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