6.创建一个记事本管理器。要求如下: 从键盘上输入1,在当前目录下创建文件iotest6.txt②从键盘上输入2,将E盘iotest2.txt厦制iotest3.txt ③从键盘上输入3,修改E盘iotest3.txt文件的内容为"修改文件3内容". 4. 从键盘上输入4,统计当前目录下文件的个数,并输出每 个文件的文件名,大小,最近修改时间。java
时间: 2024-02-13 17:06:17 浏览: 92
用java实现记事本
好的,我会尽力回答你的问题。以下是一个 Java 实现的记事本管理器的示例代码:
```java
import java.io.*;
import java.util.*;
public class NotepadManager {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while (true) {
System.out.println("请选择操作:");
System.out.println("1. 在当前目录下创建文件iotest6.txt");
System.out.println("2. 将E盘iotest2.txt复制为iotest3.txt");
System.out.println("3. 修改E盘iotest3.txt文件的内容为\"修改文件3内容\"");
System.out.println("4. 统计当前目录下文件的个数,并输出每个文件的文件名,大小,最近修改时间");
System.out.println("0. 退出程序");
int choice = scanner.nextInt();
scanner.nextLine(); // 消耗掉换行符
switch (choice) {
case 1:
createFile();
break;
case 2:
copyFile();
break;
case 3:
modifyFile();
break;
case 4:
listFiles();
break;
case 0:
System.exit(0);
break;
default:
System.out.println("无效的选择,请重新输入");
break;
}
}
}
private static void createFile() {
try {
File file = new File("iotest6.txt");
if (file.createNewFile()) {
System.out.println("文件创建成功");
} else {
System.out.println("文件已存在");
}
} catch (IOException e) {
System.out.println("文件创建失败:" + e.getMessage());
}
}
private static void copyFile() {
File sourceFile = new File("E:\\iotest2.txt");
File targetFile = new File("iotest3.txt");
try (InputStream input = new FileInputStream(sourceFile);
OutputStream output = new FileOutputStream(targetFile)) {
byte[] buffer = new byte[1024];
int length;
while ((length = input.read(buffer)) > 0) {
output.write(buffer, 0, length);
}
System.out.println("文件复制成功");
} catch (IOException e) {
System.out.println("文件复制失败:" + e.getMessage());
}
}
private static void modifyFile() {
File file = new File("E:\\iotest3.txt");
try (RandomAccessFile raf = new RandomAccessFile(file, "rw")) {
raf.write("修改文件3内容".getBytes());
System.out.println("文件修改成功");
} catch (IOException e) {
System.out.println("文件修改失败:" + e.getMessage());
}
}
private static void listFiles() {
File dir = new File(".");
File[] files = dir.listFiles();
if (files == null) {
System.out.println("当前目录下没有文件");
return;
}
for (File file : files) {
System.out.println("文件名:" + file.getName());
System.out.println("大小:" + file.length() + "字节");
System.out.println("最近修改时间:" + new Date(file.lastModified()));
}
}
}
```
这个记事本管理器实现了四个功能,分别是创建文件、复制文件、修改文件内容和统计当前目录下文件信息。其中,创建文件使用 `File.createNewFile()` 方法,复制文件使用 `FileInputStream` 和 `FileOutputStream` 实现文件的读写,修改文件内容使用 `RandomAccessFile`,统计文件信息使用 `File.listFiles()` 方法。使用 `Scanner` 类获取用户输入,并使用 `switch` 语句根据用户选择执行相应的操作。
阅读全文