Java   发布时间:2022-04-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了IO流学习笔记大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

IO 流

一. File 类

@H_987_15@mkdir() @H_987_15@mkdirs()
常用方法 方法描述
createNewFile() 创建新文件
exists() 判断文件是否存在
delete() 删除文件或文件夹,删除文件夹时只能删除空文件夹
创建目录,不包含子目录
创建目录,包含子目录
listFiles() 获取指定目录的文件与文件夹,返回一个File数组
getName() 获取文件或文件夹的名称
getPath() 获取文件或文件夹的完整路径
isDirectory() 判断是否为一个文件夹
isFile() 判断是否为一个文件
isHidden() 判断是否为一个隐藏文件
length() 获取文件的大小,单位为字节

二. RandomAccessFile(随机访问文件的读取与写入)

  1. 读取:raf.read(byte[] data) 字节方式读取

  2. 写入:raf.write(btye[] data) 写入内容的字节数组

三. 文件字节流(☆)

  1. FileInputStream(文件字节输入流):用来读取文件

  2. FiLeoutputStream(文件字节输出流):用来写入文件

四. 文件字符流(☆)

  1. FileReader(文件字符输入流):用来读取文件
  2. FileWriter(文件字符输出流):用来写入文件

五. Java 中流的分类(☆)

  • 字节流:

    1. InputStream(字节输入流):用来读取文件

    2. OutputStream(字节输出流):用来写入文件

  • 字符流:

    1. Reader(字符输入流):用来读取文件

    2. Writer(字符输出流):用来写入文件

六. 字节流与字符流的区别

  1. 字符流的底层就是字节流,字符流是对字节流的一种封装

  2. 字节流可以读取任何文件,字符流只能读取文本

  3. 使用字符流需要虑字符编码,字节流不需要

  4. 字符流可以按字符大小读取,也可以一行一行读取,字节流只能按字节大小读取

七. ObjecTinputStream(对象流)

ObjecTinputStream 对象输入流 反序列化 把对象从硬盘中读取到内存中
ObjectOutputStream 对象输出流 序列化 把内存中的对象写入到硬盘中

八. 缓冲流

  • 优点:减少对硬盘的IO读写,提高读写效率
BufferedInputStream 字节缓冲输入流 默认大小8K
BufferedOutputStream 字节缓冲输出流 默认大小8K
BufferedReader 字节缓冲输入流
BufferedWriter 字节缓冲输出流

九. 序列化与反序列化

  • 序列化:将 Java 程序中的有序不重复的对象保存在某种介质中

  • 反序列化:将介质中的有序不重复的对象读入到 Java 程序中

  • 持久化:将 Java 程序中的数据永久的保存在某种介质(电脑磁盘,数据据库)当中

十. 克隆

Sheep p  = new Sheep();
Sheep pp = (Sheep)p.clone();

课后作业

  1. 遍历指定目录下的所有文件(只要文件),包含子目录,此方法返回一个 File 列表

  2. 遍历指定目录下的指定文件(后缀名),包含子目录,此方法返回一个 File 列表

  3. 删除指定的文件夹,包含子目录

  4. 使用字节输入输出流复制文件

  5. 使用字节输入输出流复制文件夹,包含子目录

大佬总结

以上是大佬教程为你收集整理的IO流学习笔记全部内容,希望文章能够帮你解决IO流学习笔记所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: