2.编写文件输入输出流的应用程序,实现如下功能:接受用户输入的一一个文件名(可以包括路径名),检查这个文件是否存在、是否可读、是否可写,并将检查结果在屏幕上输出,若文件存在需将文件内容在屏幕上显示出来,同时将其以用户另外指定的文件名存盘。
时间: 2024-02-22 12:00:34 浏览: 75
基于C++实现:要求用户输入文件名,在屏幕上显示文件的前10行 如果文件少于10行,那么就显示整个文件,同时显示输出完毕
好的,以下是一个 Java 程序示例,用于实现文件输入输出流的应用程序,实现您所述的功能:
```java
import java.io.*;
public class FileInputOutput {
public static void main(String[] args) throws IOException {
BufferedReader keyboard = new BufferedReader(new InputStreamReader(System.in));
System.out.print("请输入文件名:");
String fileName = keyboard.readLine();
File file = new File(fileName);
if (file.exists() && file.isFile() && file.canRead() && file.canWrite()) {
System.out.println("文件存在,可读可写。");
BufferedReader fileReader = new BufferedReader(new FileReader(file));
String line;
while ((line = fileReader.readLine()) != null) {
System.out.println(line);
}
fileReader.close();
System.out.print("请输入要保存的文件名:");
String saveFileName = keyboard.readLine();
BufferedWriter fileWriter = new BufferedWriter(new FileWriter(saveFileName));
fileReader = new BufferedReader(new FileReader(file));
while ((line = fileReader.readLine()) != null) {
fileWriter.write(line);
fileWriter.newLine();
}
fileReader.close();
fileWriter.close();
System.out.println("文件已保存。");
} else {
System.out.println("文件不存在、不是文件或不可读可写。");
}
}
}
```
程序首先从用户处接受一个文件名,然后检查该文件是否存在、是否是文件、是否可读、是否可写等。如果文件存在并且可读可写,则将文件内容读取并在屏幕上显示出来,同时将文件内容写入到用户指定的文件名中。如果文件不存在或者不可读不可写,则在屏幕上输出错误信息。
程序中使用了 BufferedReader、FileReader、BufferedWriter 和 FileWriter 类来分别读取文件和写入文件。同时,程序中也使用了 File 类来检查文件是否合法。
阅读全文