java 合并多个txt文件到一个txt文件中,并进行升序排序
时间: 2024-09-14 07:02:59 浏览: 37
在Java中合并多个txt文件到一个txt文件,并对内容进行升序排序,你可以采用以下步骤:
1. **读取所有文件**:
使用`java.io.BufferedReader`和`FileReader`逐个打开每个txt文件,将文件内容读入一个字符串列表中。
```java
List<String> lines = new ArrayList<>();
String[] fileNames = {"file1.txt", "file2.txt", "file3.txt"}; // 替换为你需要合并的文件名
for (String fileName : fileNames) {
try (BufferedReader reader = new BufferedReader(new FileReader(fileName))) {
String line;
while ((line = reader.readLine()) != null) {
lines.add(line);
}
} catch (IOException e) {
System.err.println("Error reading file: " + fileName);
}
}
```
2. **合并内容**:
将所有的行合并成一个大字符串列表。
3. **排序内容**:
使用`Collections.sort()`方法对字符串列表进行升序排序。注意,这里默认按照字典顺序排序,如果你需要自定义排序规则,可以提供一个比较器。
```java
Collections.sort(lines);
```
4. **写入新文件**:
最后,将排序后的行写入新的txt文件。
```java
try (BufferedWriter writer = new BufferedWriter(new FileWriter("output.txt"))) {
for (String line : lines) {
writer.write(line);
writer.newLine();
}
} catch (IOException e) {
System.err.println("Error writing to output file");
}
```
阅读全文