江明涛的博客
Java中如何写入文本文件的指定行
Java中如何写入文本文件的指定行

Java中如何写入文本文件的指定行

Java中如何写入文本文件的指定行

在Java编程中,经常需要将数据写入文本文件,并且有时候需要在指定行中进行写入。本文将介绍如何使用Java编程语言实现这一功能。

步骤一:创建文本文件

首先,我们需要创建一个文本文件。可以使用以下代码创建一个名为data.txt的文本文件:

import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
public class CreateFile {
    public static void main(String[] args) {
        try {
            FileWriter fileWriter = new FileWriter("data.txt");
            PrintWriter printWriter = new PrintWriter(fileWriter);
            printWriter.println("Line 1");
            printWriter.println("Line 2");
            printWriter.println("Line 3");
            printWriter.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

以上代码创建了一个名为data.txt的文本文件,并在其中写入了三行数据。

步骤二:写入指定行

接下来,我们需要编写代码读取文本文件并写入指定行。可以使用以下代码实现这一功能:

import java.io.*;
import java.util.ArrayList;
import java.util.List;
public class WriteToFile {
    public static void main(String[] args) {
        try {
            File file = new File("data.txt");
            BufferedReader br = new BufferedReader(new FileReader(file));
            List<String> lines = new ArrayList<>();
            String line;
            while ((line = br.readLine()) != null) {
                lines.add(line);
            }
            br.close();
            int lineNumber = 2;  // 要写入的行号
            lines.add(lineNumber - 1, "New Line");  // 在指定行号前插入新数据
            BufferedWriter bw = new BufferedWriter(new FileWriter(file));
            for (String l : lines) {
                bw.write(l);
                bw.newLine();
            }
            bw.close();
            System.out.println("数据已成功写入文件。");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

以上代码将读取data.txt文件的内容,并将每一行放入一个列表中。然后,在指定行号的前面插入新的数据。

最后,将更新后的列表重新写入文本文件。在上面的代码中,我们通过BufferedWriter将新数据写入文件。

运行结果

运行这个程序后,你将在data.txt文件中的第二行前看到一个新的数据New Line。文件的内容如下所示:

Line 1
New Line
Line 2
Line 3

通过以上步骤,我们成功地在指定行中写入了新的数据。

希望本文对你理解和掌握Java编程中如何写入文本文件的指定行有所帮助。如有疑问,请随时提问。