将文本附加到现有文件的 Java 程序
要理解此示例,您应该具备以下 Java 编程的知识:
在从文件创建字符串之前,我们假设我们的 src
文件夹中有一个名为 test.txt
的文件。
这是 test.txt
的内容
这是一个测试文件。
示例 1:将文本附加到现有文件
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.nio.file.StandardOpenOption;
public class AppendFile {
public static void main(String[] args) {
String path = System.getProperty("user.dir") + "\\src\\test.txt";
String text = "追加的内容";
try {
Files.write(Paths.get(path), text.getBytes(), StandardOpenOption.APPEND);
} catch (IOException e) {
}
}
}
运行程序时,test.txt文件现在包含:
这是一个测试文件。追加的内容
在上面的程序中,我们使用 System
的 user.dir
属性来获取系统变量中存储的用户目录的路径. 您可以跳转到 Java Program 以获取当前目录以获取更多信息。
同样,要添加的文本存储在变量 text
中. 然后,在一个 try-catch
块中,我们使用 Files.write()
方法将文本附加到现有文件中。
该 write()
方法采用给定文件的路径、写入的文本以及文件应如何打开以进行写入。在我们的例子中,我们使用 APPEND
选项进行写入。
由于 write() 方法可能返回一个 IOException
,我们使用一个 try-catch
块来正确捕获异常。
示例 2:使用 FileWriter 将文本附加到现有文件
import java.io.FileWriter;
import java.io.IOException;
public class AppendFile {
public static void main(String[] args) {
String path = System.getProperty("user.dir") + "\\src\\test.txt";
String text = "追加的内容";
try {
FileWriter fw = new FileWriter(path, true);
fw.write(text);
fw.close();
}
catch(IOException e) {
}
}
}
程序的输出与示例 1 相同。
在上面的程序中,我们没有使用 write()
方法,而是使用 FileWriter
实例(对象)将文本附加到现有文件中。
创建 FileWriter
对象时,我们传递文件的路径和 true
作为第二个参数。 true
意味着我们允许附加文件。
然后,我们使用 write()
方法附加给定的文本,最后关闭 FileWriter
对象。