IO流总结
流的三种分类方式
流的三种分类方式
流向:输入流、输出流
数据单位:字节流(byte)、字符流(char)
流的角色:节点流(File)、处理流(Buffer)
写出4个IO流中的抽象基类,4个文件流,4个缓冲流
4个抽象基类:InputStream、OutputStream、Reader、Writer
4个文件流:FileInputStream、FileOutputStream、FileReader、FileWriter
4个缓冲流:BufferedInputStream、BufferedOutputStream、BufferedReader、BufferedWriter
字节流与字符流的区别和选择
字节流:read(byte[] b) /read() 处理非文本文件时使用/如果只是对文本文件的搬运(不看),字节流也可以
字符流:read(char[] c) / read() 处理文本文件时使用
缓冲流和文件流的区别:缓冲流把读入数据先放在缓冲区中,累计够量后才写入文件,减少了写入次数,从而提高文件复制的速度。
转换流是哪两个类,分别的作用是什么?
InputStreamReader:将一个字节输入转化为字符输入。 解码
子类:FileReader
OutputStreamWriter:将输出的字符流转化为输出的字节流。 编码
子类:FileWriter
InputStreamReader isr = new InputStreamReader(new FileInputStream(path),“源文件编码类型”);
OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream(path),“目标文件编码类型”);