IO流的定义上篇已经有过赘述,此篇主要讲他的基类和方法:
4个抽象基类:
InputStream、OutputStream、Reader、Writer
4个文件流:
FileInputStream、FileOutputStream、FileReader、FileWriter
4个缓冲流:
BufferedInputStream、BufferedOutputStream、BufferedReader、BufferedWriter
字节流与字符流的区别与使用情境:
字节流:处理非文本文件时使用/如果只是对文本文件的搬运(不看),字节流也可以
字符流: 处理文本文件时使用
转换流也属于字符流:
InputStreamReader:将InputStream转换为Reader。
OutputStreamWriter:将Writer转换为OutputStream。
字节流:
表示字节输入流的所有类的超类:InputStream(字节输入流)
表示字节输出流的所有类的超类:OutputStream(字节输出流)
创建文件输出流以指定名称写入文件:FileOutputStream bos = new FileOutputStream("文件路径及名称");
①将所需内容写入文件:bos.write();
②将指定的字节写入此文件输出流 一次写一个字节数据:bos.write(int b)
③将 b.length字节从指定的字节数组写入此文件输出流 一次写一个字节数组数据:bos.write(byte[] b)
④将 len字节从指定的字节数组开始,从偏移量off开始写入此文件输出流 一次写一个字节数组的部分数据:bos.write(byte[] b, int off, int len)
追加写入: public FileOutputStream(String name,boolean append)
注:创建文件输出流以指定的名称写入文件。如果第二个参数为true ,则字节将写入文件的末尾而不是开头。