java 需求:读取文件中的数据 33 22 11 55 44 排序后 11 22 33 44 55 再次写到本地文件
以下是实现该需求的Java代码:
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;
public class FileSorter {
public static void main(String[] args) {
// 读取文件中的数据
ArrayList<Integer> list = readFromFile("data.txt");
System.out.println("读取到的数据为:" + list);
// 排序
Collections.sort(list);
System.out.println("排序后的结果为:" + list);
// 写入到本地文件
writeToFile(list, "sorted_data.txt");
System.out.println("已将排序后的结果写入到文件 sorted_data.txt 中。");
}
public static ArrayList<Integer> readFromFile(String filename) {
ArrayList<Integer> list = new ArrayList<>();
try {
Scanner scanner = new Scanner(new File(filename));
while (scanner.hasNextInt()) {
list.add(scanner.nextInt());
}
scanner.close();
} catch (FileNotFoundException e) {
System.err.println("文件 " + filename + " 不存在!");
}
return list;
}
public static void writeToFile(ArrayList<Integer> list, String filename) {
try {
FileWriter writer = new FileWriter(new File(filename));
for (int i = 0; i < list.size(); i++) {
writer.write(list.get(i) + " ");
}
writer.close();
} catch (IOException e) {
System.err.println("写入文件 " + filename + " 失败!");
}
}
}
其中,readFromFile() 方法用于从文件中读取数据,返回一个 ArrayList
原文地址: https://www.cveoy.top/t/topic/fGaA 著作权归作者所有。请勿转载和采集!