用java创建文件number.txt, 里面存放多个整数。 2 读取该文件里面的数据,并统计平均值,最 大値,最小値。 3. 将统计的信息及数据排序后 写入result.txt 中。
时间: 2024-02-22 07:58:49 浏览: 78
好的,我可以为您提供相关的Java代码来实现这个功能。请注意,您需要在代码中指定number.txt文件和result.txt文件的完整路径。
```java
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) {
// 创建文件number.txt
try {
File file = new File("number.txt");
if (file.createNewFile()) {
System.out.println("文件已创建");
} else {
System.out.println("文件已存在");
}
} catch (IOException e) {
System.out.println("创建文件失败");
e.printStackTrace();
}
// 写入数据到number.txt
try {
FileWriter writer = new FileWriter("number.txt");
writer.write("1 2 3 4 5 6 7 8 9 10");
writer.close();
} catch (IOException e) {
System.out.println("写入文件失败");
e.printStackTrace();
}
// 读取数据并统计平均值、最大值、最小值
try {
FileReader reader = new FileReader("number.txt");
BufferedReader br = new BufferedReader(reader);
String line;
int sum = 0;
int count = 0;
int max = Integer.MIN_VALUE;
int min = Integer.MAX_VALUE;
while ((line = br.readLine()) != null) {
String[] numbers = line.split(" ");
for (String number : numbers) {
int n = Integer.parseInt(number);
sum += n;
count++;
max = Math.max(max, n);
min = Math.min(min, n);
}
}
double average = (double) sum / count;
System.out.println("平均值:" + average);
System.out.println("最大值:" + max);
System.out.println("最小值:" + min);
br.close();
reader.close();
} catch (IOException e) {
System.out.println("读取文件失败");
e.printStackTrace();
}
// 将统计信息及数据排序后写入result.txt
try {
FileReader reader = new FileReader("number.txt");
BufferedReader br = new BufferedReader(reader);
String line;
List<Integer> list = new ArrayList<>();
while ((line = br.readLine()) != null) {
String[] numbers = line.split(" ");
for (String number : numbers) {
list.add(Integer.parseInt(number));
}
}
Collections.sort(list);
FileWriter writer = new FileWriter("result.txt");
writer.write("平均值:" + String.format("%.2f", average) + "\n");
writer.write("最大值:" + max + "\n");
writer.write("最小值:" + min + "\n");
writer.write("排序后数据:\n");
for (int number : list) {
writer.write(number + " ");
}
writer.close();
br.close();
reader.close();
} catch (IOException e) {
System.out.println("读取或写入文件失败");
e.printStackTrace();
}
}
}
```
此代码将会在当前目录下创建number.txt文件,并向其中写入数据1-10,然后从该文件中读取数据并计算平均值、最大值和最小值,最后将统计信息和排序后的数据写入result.txt文件中。
阅读全文
相关推荐















