Java合并多个文件的实例代码,可以通过以下步骤实现:
1. 获取所有待合并文件的文件名和路径
我们可以使用Java中的File类来获取指定目录下的所有文件的文件名和路径,具体实现代码如下:
File dir = new File("待合并文件所在的文件夹路径");
File[] files = dir.listFiles();
for (File file : files) {
if (file.isFile()) {
System.out.println("文件名:" + file.getName() + ",路径:" + file.getAbsolutePath());
}
}
2. 将所有文件内容拼接到一个字符串中
我们可以通过Java的IO流实现将多个文件的内容读取到一个字符串中,具体实现代码如下:
StringBuffer sb = new StringBuffer();
for (File file : files) {
if (file.isFile()) {
BufferedReader br = new BufferedReader(new FileReader(file));
String line = null;
while ((line = br.readLine()) != null) {
sb.append(line).append("\n");
}
br.close();
}
}
String content = sb.toString();
3. 将合并后的内容写入到一个新文件中
最后,我们可以通过Java的IO流将合并后的内容写入到一个新文件中,具体实现代码如下:
FileWriter fw = new FileWriter("合并后的文件路径");
fw.write(content);
fw.close();
示例一
下面是一个示例代码,它可以将所有待合并在同一文件夹下的TXT文件合并成一个新文件:
import java.io.*;
public class MergeFilesDemo {
public static void main(String[] args) throws IOException {
String dirPath = "D:/workspace/mergefiles";
File dir = new File(dirPath);
File[] files = dir.listFiles();
StringBuffer sb = new StringBuffer();
for (File file : files) {
if (file.isFile()) {
BufferedReader br = new BufferedReader(new FileReader(file));
String line = null;
while ((line = br.readLine()) != null) {
sb.append(line).append("\n");
}
br.close();
}
}
String content = sb.toString();
FileWriter fw = new FileWriter("D:/workspace/mergefiles/result.txt");
fw.write(content);
fw.close();
System.out.println("合并完成!新文件路径为:D:/workspace/mergefiles/result.txt");
}
}
示例二
下面是另一个示例代码,它可以将多个不同目录下的TXT文件合并成一个新文件:
import java.io.*;
public class MergeFilesDemo {
public static void main(String[] args) throws IOException {
String[] filePaths = {
"D:/workspace/file1.txt",
"D:/workspace/file2.txt",
"E:/data/file3.txt",
"E:/data/file4.txt"
};
File[] files = new File[filePaths.length];
for (int i = 0; i < files.length; i++) {
files[i] = new File(filePaths[i]);
}
StringBuffer sb = new StringBuffer();
for (File file : files) {
if (file.isFile()) {
BufferedReader br = new BufferedReader(new FileReader(file));
String line = null;
while ((line = br.readLine()) != null) {
sb.append(line).append("\n");
}
br.close();
}
}
String content = sb.toString();
FileWriter fw = new FileWriter("D:/workspace/result.txt");
fw.write(content);
fw.close();
System.out.println("合并完成!新文件路径为:D:/workspace/result.txt");
}
}
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java合并多个文件的实例代码 - Python技术站