请用java语言编写下列程序,编程实现:从键盘中输入若干行文本信息,使用PrintStream类存入文件myfile.txt中(按Ctrl+D结束),之后再读取该文件内容,并输出。
时间: 2024-12-10 11:48:36 浏览: 25
以下是一个简单的Java程序,它实现了从键盘输入文本并将其保存到文件`myfile.txt`,然后再读取并输出文件内容:
```java
import java.io.*;
import java.util.Scanner;
public class FileIOExample {
public static void main(String[] args) {
try {
// 打开输出流,如果文件不存在则会创建
PrintWriter writer = new PrintWriter("myfile.txt", true);
// 使用Scanner从控制台获取用户输入
Scanner scanner = new Scanner(System.in);
while (scanner.hasNextLine()) {
String input = scanner.nextLine();
writer.println(input); // 将输入追加到文件中
}
scanner.close();
// 关闭输出流
writer.close();
// 读取文件内容
BufferedReader reader = new BufferedReader(new FileReader("myfile.txt"));
String line;
System.out.println("\n现在开始读取文件内容:");
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
// 关闭读者
reader.close();
} catch (IOException e) {
System.err.println("发生错误: " + e.getMessage());
}
}
}
```
这个程序首先创建一个`PrintWriter`对象,以追加模式打开文件。然后,它使用`Scanner`从控制台读取用户的输入,并逐行写入文件。当用户按下`Ctrl+D`(在Unix/Linux系统中)或`Ctrl+Z`(在Windows系统中)时,输入结束。
接着,关闭`writer`,然后创建一个`BufferedReader`来读取文件内容,并逐行显示出来。最后,关闭`reader`以释放资源。
如果在处理文件I/O过程中发生异常,程序会捕获`IOException`并打印错误消息。
阅读全文