(写/读数据)编写程序,如果名为 Exercise1215.txt的文件不存在,则创建该文件。使用文本 I / O 将随机产生的100个整数写入文件,文件中的整数由空格分开。从文件中读回数据并以升序显示数据。
时间: 2024-03-14 17:43:11 浏览: 57
好的,这里是Python的代码实现:
```python
import random
# 创建文件并写入随机整数
filename = 'Exercise1215.txt'
try:
with open(filename, 'x') as f:
random_numbers = [random.randint(1, 100) for _ in range(100)]
f.write(' '.join(map(str, random_numbers)))
except FileExistsError:
pass
# 读取数据并升序排序
with open(filename, 'r') as f:
numbers_str = f.read()
numbers = list(map(int, numbers_str.split()))
numbers.sort()
# 输出结果
print(numbers)
```
首先尝试以写入模式打开文件,如果该文件不存在,则创建该文件并写入随机整数。如果文件已存在,则直接跳过创建步骤。
然后以读取模式打开文件,读取文件中的数据并将其转换为整数列表。对整数列表进行排序,最后输出结果。
相关问题
Java:(写/读数据)编写程序,如果名为 Exercise1215.txt的文件不存在,则创建该文件。使用文本 I / O 将随机产生的100个整数写入文件,文件中的整数由空格分开。从文件中读回数据并以升序显示数据。
好的,这里是Java的代码实现:
```java
import java.io.*;
import java.util.*;
public class Exercise1215 {
public static void main(String[] args) {
String filename = "Exercise1215.txt";
File file = new File(filename);
// 如果文件不存在,则创建该文件并写入随机整数
if (!file.exists()) {
try (PrintWriter writer = new PrintWriter(file)) {
Random random = new Random();
for (int i = 0; i < 100; i++) {
int num = random.nextInt(100) + 1;
writer.print(num + " ");
}
} catch (IOException e) {
System.out.println("Failed to create file");
e.printStackTrace();
}
}
// 从文件中读取数据并升序排序
try (Scanner scanner = new Scanner(file)) {
List<Integer> numbers = new ArrayList<>();
while (scanner.hasNextInt()) {
numbers.add(scanner.nextInt());
}
Collections.sort(numbers);
// 输出结果
System.out.println(numbers);
} catch (FileNotFoundException e) {
System.out.println("File not found");
e.printStackTrace();
}
}
}
```
首先创建一个`File`对象,检查文件是否存在。如果文件不存在,则使用`PrintWriter`写入随机整数。使用`Random`类生成100个随机整数,并将它们写入文件中,整数之间用空格分隔。
然后使用`Scanner`读取文件中的数据,并将其转换为整数列表。对整数列表进行排序,最后输出结果。在`Scanner`的构造函数中指定文件对象即可读取文件数据。在读取整数时需要使用`hasNextInt()`方法判断是否有下一个整数。
需要注意的是,在使用完`PrintWriter`和`Scanner`后,需要使用`try-with-resources`语句关闭文件流,以避免资源泄漏。
(写/读数据)编写程序,如果名为Exercise.txt的文件不存在,则创建该文件。随机产生一百个整数,并用文本I/O将它写入文件。文件中整数由空格分开,从文件中读出数据并显示排序的数据。
以下是 Python 代码实现:
```python
import random
# 创建文件并写入随机整数
filename = "Exercise.txt"
try:
with open(filename, "x") as file:
random_ints = [random.randint(-100, 100) for _ in range(100)]
file.write(" ".join(str(i) for i in random_ints))
except FileExistsError:
pass
# 读取文件并排序
with open(filename, "r") as file:
data = file.read().split()
data = [int(d) for d in data]
sorted_data = sorted(data)
# 输出排序后的数据
print(sorted_data)
```
与上一个问题的代码实现相同,只需要将文件名改为 "Exercise.txt" 即可。
阅读全文