java_day9

IO流

java.io.File类的应用

文件流 FileInputStream/FileOutputStream/FileReader/FileWriter

缓冲流 BufferedInputStream/BufferedOutputStream/BufferedReader/BufferedWriter

File类

File可以新建、删除、重命名文件和目录,但File不能访问文件内容本身,如果需要访问文件内容本身,需要使用输入/输出流

IO原理

java程序中,对于数据的输入/输出操作以流的方式进行

流的分类

按操作数据单位不同分为:字节流,字符流 按数据流的流向不同分为:输入流,输出流 按流的角色不同分为:节点流,处理流

(抽象基类)字节流字符流
输入流InputStreamReader
输出流OutputStreamWriter

java的io流一共有40多个类,都是从以上四个抽象基类中派生出来的

文件字节输入流

文件字节输出流

字节流文件复制

文件字符流

与文件字节流的差别:

  1. FileReader类
  2. 临时数组:char[] = new char[1024];
  3. 调用流对象的读取方法讲流中的数据读入到数组中 对象.read(ch);

缓冲流

为了提高数据读写的数据,java API提供了带缓冲功能的流类,在使用这些流类时,会创建一个内部缓冲区数组

根据数据操作单位可以将缓冲流分为:

  • BufferedInputStream和BufferedOutputStream:针对FileInputStream和FileOutputStream作缓冲流
  • BufferedReader和BufferedWriter:针对FileReader和FileWriter作缓冲流

 


立志成为一名攻城狮