<分区>
我有一些 .txt
文件。我想将它们连接起来并生成一个文本文件。
我将如何用 Java 实现?
情况如下
file1.txt file2.txt
将结果拼接成
file3.txt
file1.txt
的内容后面是 file2.txt
。
<分区>
我有一些 .txt
文件。我想将它们连接起来并生成一个文本文件。
我将如何用 Java 实现?
file1.txt file2.txt
将结果拼接成
file3.txt
file1.txt
的内容后面是 file2.txt
。
最佳答案
您可以使用 Apache Commons IO图书馆。这有 FileUtils
类。
// Files to read
File file1 = new File("file1.txt");
File file2 = new File("file2.txt");
// File to write
File file3 = new File("file3.txt");
// Read the file as string
String file1Str = FileUtils.readFileToString(file1);
String file2Str = FileUtils.readFileToString(file2);
// Write the file
FileUtils.write(file3, file1Str);
FileUtils.write(file3, file2Str, true); // true for append
此类中还有其他方法可以帮助以更优化的方式完成任务(例如使用流 或列表)。
如果您使用的是 Java 7+
public static void main(String[] args) throws Exception {
// Input files
List<Path> inputs = Arrays.asList(
Paths.get("file1.txt"),
Paths.get("file2.txt")
);
// Output file
Path output = Paths.get("file3.txt");
// Charset for read and write
Charset charset = StandardCharsets.UTF_8;
// Join files (lines)
for (Path path : inputs) {
List<String> lines = Files.readAllLines(path, charset);
Files.write(output, lines, charset, StandardOpenOption.CREATE,
StandardOpenOption.APPEND);
}
}
关于java - 在 Java 中连接多个 .txt 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10675450/