编写程序,随机产生100个100-200的整数,使用PrintStream对象输出到文件output.txt中,然后使用DataInputStream类的readInt()方法读出数据,按照从小到大的顺序对100个数排序,在屏幕上输出,同时使用DataOutputStream类的writeInt(int i)方法写到名为sort.dat的文件中。
时间: 2024-02-09 12:13:14 浏览: 72
好的,我可以帮你解决这个问题。以下是 Java 代码实现:
```java
import java.io.*;
import java.util.*;
public class SortNumbers {
public static void main(String[] args) {
Random rand = new Random();
try {
// 输出随机数到output.txt文件
PrintStream ps = new PrintStream(new FileOutputStream("output.txt"));
for (int i = 0; i < 100; i++) {
int num = rand.nextInt(101) + 100;
ps.println(num);
}
ps.close();
// 从output.txt读取数据并排序
DataInputStream dis = new DataInputStream(new FileInputStream("output.txt"));
int[] nums = new int[100];
for (int i = 0; i < 100; i++) {
nums[i] = dis.readInt();
}
Arrays.sort(nums);
dis.close();
// 输出排序后的结果并写入sort.dat文件
DataOutputStream dos = new DataOutputStream(new FileOutputStream("sort.dat"));
for (int i = 0; i < 100; i++) {
System.out.println(nums[i]);
dos.writeInt(nums[i]);
}
dos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
这个程序会先生成100个100-200之间的随机整数,将它们输出到output.txt文件中,然后再从output.txt中读取这些数,进行排序并输出到屏幕上,同时将排序后的结果写入sort.dat文件中。
阅读全文