68. 缓存输入输出字符流

it2022-05-06  5

输入字符流:--------------| Reader 输入字符流的基类。 抽象类----------| FileReader 读取文件的输入字符流----------| BufferedReader 缓存输入字符流(提高效率和扩展了FileReader的功能)。内部其实也维护了一个字符数组扩展功能:readLine()     一次读取文本的一行数据,如果读取到了文件末尾返回null输出字符流:--------------| Write  输出字符流的基类。 抽象类----------| FileWrite  向文件输入数据----------| BufferedWrite 缓存输出字符流。 内部维护了一个字符数组,当我们使用write的时候是把数据存储到了字符数组中,并不是写入了文件中当我们使用flush,close方法或者数组满了的时候,才会写入文件中扩展功能:newLine()    添加一个回车符,实际上就是输出(/r/n)注意:缓存流都不具备读写文件的能力

public class Demo3 { public static void main(String[] args)throws IOException { File file = new File("D:\\新建文件夹\\1.txt"); readText(file);//原数据 writeText(file);//添加数据 System.out.println("-------------------------------"); readText(file);//添加后数据 } //一行一行读取文本 public static void readText(File file) throws IOException { FileReader fileReader = new FileReader(file); BufferedReader bufferedReader = new BufferedReader(fileReader); String line = null; while((line = bufferedReader.readLine())!=null) { System.out.println(line); } bufferedReader.close(); } //一行一行把数据存入文本中 public static void writeText(File file) throws IOException { FileWriter fileWriter = new FileWriter(file,true); BufferedWriter bufferedWriter = new BufferedWriter(fileWriter); bufferedWriter.newLine();//换行 bufferedWriter.write("789 789"); bufferedWriter.close(); } }

 

转载于:https://www.cnblogs.com/zjdbk/p/9073742.html


最新回复(0)