• 68. 缓存输入输出字符流


    输入字符流:
    --------------| 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();
        }
    }
  • 相关阅读:
    第十六届全国大学智能汽车竞赛竞速比赛规则-讨论稿
    从0到1设计一台8bit计算机
    在 CentOS7 上安装 MongoDB
    sea.js五分钟上手
    自动调试自动编译五分钟上手
    自动调试自动编译五分钟上手
    在react底下安装环境
    在react底下安装环境
    推荐几款好用的云笔记软件
    推荐几款好用的云笔记软件
  • 原文地址:https://www.cnblogs.com/zjdbk/p/9073742.html
Copyright © 2020-2023  润新知