IO流

目录

1、无缓冲区(要通过中间数组,如byte数组和char数组,细粒度)

特点

  • 构造方法传入的是一个地址
  • 只能一个一个读,操作很精细

FileInputStream

别忘记
- close()

FileOutputStream

别忘记
- flush()
- close()

注意下面的代码块(理解):
{
FileOutputStream a = new FileOutputStream("文件路径");
a.write(byte[] b);
}
反复执行会覆盖文件内容

但是!
{
FileOutputStream a = new FileOutputStream("文件路径");
a.write(byte[] b);
a.write(byte[] b);
a.write(byte[] b);
}
可以连续写3次不覆盖!

理解上面两种的区别:

  • 第一种需要用到append参数,用处是把上面两行代码封装到一个函数里面,每次调用的时候都可以在文件的末尾追加数据,而不会覆盖。
  • 第二种方法就适用于平常写代码进行测试的时候。

2、带缓冲区的(日常能用到)

特点

  • 构造方法传入的是一个节点流
  • 可以一行一行地读
  • 可以换行

理解缓冲区的概念

无缓冲区的要通过中间数组,这个中间数组就相当于缓冲区,能把数据打包成一团然后传送给接收方。

3、转换流

核心:3重套娃

4、理解file单词

既可以代表一个路径,也可以代表一个文件名。

上一篇:java学习day27---(流的分类)


下一篇:字节流