【问题标题】:JAVA write new row to .CSV file [duplicate]JAVA将新行写入.CSV文件[重复]
【发布时间】:2017-02-04 13:49:11
【问题描述】:

如何将新数据行写入已包含数据的 .CSV 文件。到目前为止,我的代码只是清除了文件,实际上并没有写任何东西?

            BufferedReader br = null;
        BufferedWriter bw = null;
        String fileString = "patients.csv";
        String fileLine = "";

        File file = new File(fileString);
        br = new BufferedReader(new FileReader(file));
        FileWriter fw = new FileWriter(fileString);
        bw = new BufferedWriter(fw);

        while((fileLine = br.readLine()) != null){

            bw.write(fileLine);
        }


        br.close();
        bw.close();

【问题讨论】:

  • 你到底想做什么?你能显示输入和预期输出吗?
  • 我想将新的一行数据写入现有的 .CSV 文件。输入来自多个 JTextFields

标签: java file csv file-io append


【解决方案1】:

在构造函数java FileWriter中指定true可以知道如果放置不覆盖信息则将true和append添加到文件末尾

FileWriter fw = new FileWriter(fileString,true);

【讨论】:

    【解决方案2】:

    如果您想使用 FileWriter 附加到文件,请使用 Constructor

    根据 Javadocs

    在给定 File 对象的情况下构造一个 FileWriter 对象。如果第二个 参数为真,则字节将被写入文件末尾 而不是开始。

    但是,回到您的代码,您只需将新数据写入FileWriter,而不需要重写现有数据。

    【讨论】:

      猜你喜欢
      • 2018-11-28
      • 2017-05-04
      • 2012-12-17
      • 2016-06-27
      • 1970-01-01
      • 2018-08-09
      • 1970-01-01
      • 1970-01-01
      • 2018-12-28
      相关资源
      最近更新 更多