java:将本目录下的1.txt文件信息恢复顺序(1.txt文件是几个以序号为首中文的段落)
时间: 2024-10-23 12:21:25 浏览: 21
node文件批量重命名的方法示例
在Java中,要恢复本目录下`1.txt`文件中内容的原始顺序,通常我们会读取文本文件,按行处理,并将每一行按照序号排序后再写回原文件。这里是一个简单的示例,假设序号是每行的开始:
```java
import java.io.*;
import java.util.*;
public class FileSorter {
public static void main(String[] args) {
String filePath = "1.txt"; // 文件路径
List<String> lines = new ArrayList<>(); // 存放文件内容
try (BufferedReader br = new BufferedReader(new FileReader(filePath))) {
String line;
while ((line = br.readLine()) != null) {
// 提取序号并忽略其他部分
int lineNumber = Integer.parseInt(line.split(" ")[0]);
lines.add(lineNumber + ": " + line.substring(line.indexOf(":") + 1)); // 保留从冒号之后的内容
}
} catch (IOException e) {
System.err.println("Error reading file: " + e.getMessage());
return;
}
// 对行列表进行排序
Collections.sort(lines, Comparator.comparingInt(Integer::parseInt));
try (BufferedWriter bw = new BufferedWriter(new FileWriter(filePath))) {
for (String sortedLine : lines) {
bw.write(sortedLine);
bw.newLine();
}
} catch (IOException e) {
System.err.println("Error writing back to file: " + e.getMessage());
}
}
}
```
这个程序首先读取`1.txt`文件,提取出每行的序号和对应的文本内容。然后,它使用`Collections.sort()`对行列表进行排序,最后将排序后的文本写回到原文件。
阅读全文