2.定义一个测试类:Test 2.1创建一个File对象,关联number1.txt文件 2.2通过File对象进行判断,如果当前对象是一个文件的话,则继续执行下面步骤 2.3创建一个BufferedReader对象,关键已有的File对象 2.4创建TreeSet集合对象,泛型为Integer(由于题目要求数字按从小到大进行排序,选择TreeSet数据类型较为合适) 2.5通过输入流对象读取文件中内容,将每个数字都保存到集合中(注意读取出来的数据是字符串需要将字符串转成Integer类型) 2.6创建一个BufferedWriter对象,关联到当前项目下的number2.txt文件 2.7通过输出流对象将TreeSet集合中的所有元素全部写出
时间: 2024-03-25 20:38:05 浏览: 56
以下是Java代码实现题目要求的步骤:
```java
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.TreeSet;
public class Test {
public static void main(String[] args) {
File file = new File("number1.txt");
// 判断文件是否存在
if (file.isFile()) {
try {
// 创建输入流对象
BufferedReader reader = new BufferedReader(new FileReader(file));
// 创建TreeSet集合对象
TreeSet<Integer> set = new TreeSet<Integer>();
// 读取文件中的每个数字并保存到集合中
String line = reader.readLine();
while (line != null) {
String[] numbers = line.split(" ");
for (String number : numbers) {
set.add(Integer.parseInt(number));
}
line = reader.readLine();
}
reader.close();
// 创建输出流对象
BufferedWriter writer = new BufferedWriter(new FileWriter("number2.txt"));
// 将集合中的所有数字按从小到大的顺序写入到文件中
for (Integer number : set) {
writer.write(number.toString());
writer.write("\n");
}
writer.close();
System.out.println("数字已按从小到大的顺序写入到文件number2.txt中");
} catch (IOException e) {
System.out.println("读取文件失败:" + e.getMessage());
}
} else {
System.out.println("文件不存在");
}
}
}
```
运行该程序后,会读取当前项目根目录下的`number1.txt`文件中的数字,并按从小到大的顺序写入到当前项目根目录下的`number2.txt`文件中。
阅读全文