java - 迭代文件中的行并在每行末尾添加空值

标签 java file io file-handling

我正在尝试在文件中每一行的末尾添加关键字 null (更具体地说是 ,null )。我尝试了下面提到的代码,但对文件没有影响。 注意:TESTFILE 是一个包含 10 行的现有文件,我必须在每行末尾附加 ,null

final String FILENAME = "D:\\TESTFILE"
FileWriter fileWriter = new FileWriter(FILENAME, true);
BufferedWriter bw =  new BufferedWriter(fileWriter);
FileReader fileReader = new FileReader(FILENAME);
BufferedReader br = new BufferedReader(fileReader);
PrintWriter printWriter =  new PrintWriter(bw);
String line;

while ((line = br.readLine()) != null) {
        printWriter.println(",null");
    }
}

最佳答案

这里的问题是你试图同时读取和写入同一个文件,这是行不通的,你需要单独执行此操作。

  1. 阅读你的文件。
  2. 更新每一行内容。
  3. 将更新的行保存到一个新的临时文件中。
  4. 保存这个新的临时文件并在阅读所有行后删除您的原始文件。
  5. 最后将临时文件重命名为您的原始文件名。

可以查看 Modifying existing file content in Java 有关如何实现它的更多详细信息。

关于java - 迭代文件中的行并在每行末尾添加空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46644593/

相关文章:

java - 将数组转换为 TreeView : JavaFX8

java - 以编程方式填充 JVM 永久代 (PermGen) 内存区域

javascript - 在 Google Apps 脚本网络应用中显示文件和文件夹

python - 我需要能够重新下载提交到我的 django 网站上的文档

Haskell - 递归循环中的分支除了所选分支之外还执行所有先前访问过的分支

java - 基于另一个列表的 1 个列表的流过滤器

java - 删除 Gridview 中的多余空间

java - Android 选择并打开带有自定义扩展名的文件

c - 读取文件中的行数

C - 对文本文件中的单词列表进行排序