java - 如何在文本文件的每一行之前和之后插入文本?

标签 java file writefile

下面是我的代码,它读取一个文件,然后将其内容写入一个新文件。我需要做的是在旧文件的每行文本之间添加文本,然后将其放入新文件中。在此代码中,文件被作为一个整体读取,那么如何将其更改为逐行读取并在每行之间添加文本?​​

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.nio.file.StandardOpenOption;
import java.util.List;

public class Webpage {
  public static String readTextFile(String fileName) throws IOException {
    String content = new String(Files.readAllBytes(Paths.get(fileName)));
    return content;
  }

  public static List<String> readTextFileByLines(String fileName)throws IOException {
    List<String> lines = Files.readAllLines(Paths.get(fileName));
    return lines;
  }

  public static void writeToTextFile(String fileName, String content)throws IOException {
    Files.write(Paths.get(fileName), content.getBytes(), StandardOpenOption.CREATE);
  }

} 

最佳答案

我认为你的 readTextFileByLines 会做你想要的。您可以遍历列表并在每行之前和之后写出您想要的任何内容。

如果必须使用 readTextFile 方法,则可以使用 split("\n") 将单个大字符串(整个文件)转换为字符串数组,每行一个。

嗯...Split(一个参数)的文档说尾随空字符串不会包含在结果中。因此,如果您的输入文件末尾可能包含空行,您应该使用两个参数 split 和一个非常大的第二个参数: split("\n", Long.MAX_VALUE);

关于java - 如何在文本文件的每一行之前和之后插入文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36973842/

相关文章:

node.js - node fs.fsync(什么时候使用?)

java - 在不同类的 JPanel 之间切换

java - 如何使用 groovy 在 xml 中追加一行

java - 如何在 Hibernate Spring 中级联 CollectionElement

java - Spring Data REST - 对数据库的前 10 次调用非常慢

c - C 编程中文件中写入了错误的详细信息

C# 在计算机中搜索文件

C - 无法从 Xcode 创建新的 .txt 文件

c - 将文本基本传输到 C 中的结构程序。为什么我总是得到奇怪的输出?

python-3.x - 动态创建文件夹并将 csv 文件写入该文件夹