如何根据文本文件中的值更新文本文件



我想根据csv文件的特定值(一个id)编辑该文件的某些值(一行值)。我可以读写(附加)其中的值,但不知道如何编辑和删除它们。

以下是我正在做的读取文件和附加值的一小段代码:

FileWriter writer = new FileWriter("file.csv", true);
try {
    FileInputStream fstream = new FileInputStream("file.csv");
    BufferedReader br = new BufferedReader(new InputStreamReader(fstream));
    String strLine;              
    while ((strLine = br.readLine()) != null) {
        String[] fields = strLine.split(",");
        if (fields[1].equals("value") {
            fields[1] = "different value";
        }
        writer.append(fields);
    }
    catch(...)
}

但我不知道如何将值写回文件中的同一位置。

不幸的是,您无法同时打开一个文件进行读取和写入。您需要先读取文件并关闭它,然后再打开它进行写入。

潜在的解决方案有:

  • 将输出写入另一个文件,然后在完成时替换原始文件

  • 将所有输出保存在内部变量中,然后,一旦完成读取,关闭文件并重新打开进行写入。

相关内容

  • 没有找到相关文章

最新更新