如果项目1是把信息存到HashMap里,那么这个就是把信息存到硬盘上,实现持久化存储,用到的知识点是Java的异常处理和IO流,用的是BufferedReader 和 BufferedWriter 来写入读取数据,代码如下:
import java.io.*;
import java.util.Scanner;
public class test {
public static void main(String[] args) throws IOException {
menu();
Scanner scanner = new Scanner(System.in);
while (scanner.hasNext()) {
String str = scanner.nextLine();
switch (str) {
case "1":
System.out.println("请输入要创建文件的位置及文件名称,例如:E:\\新建文件夹\\newfile.txt");
String path = scanner.nextLine();
Crete(path);
break;
case"2":
System.out.println("请输入文件夹位置");
path = scanner.nextLine();
File file = new File(path); //以某路径实例化一个File对象
if (!file.exists()){ //如果不存在
boolean dr = file.mkdirs(); //创建目录
System.out.println("创建成功");
}else{
System.out.println("文件夹已存在");
}
break;
case "3":
System.out.println("请输入要读取文件的位置及文件名称,例如:E:\\新建文件夹\\newfile.txt");
path = scanner.nextLine();
read(path);
break;
case "4":
System.out.println("请输入要写入文件的位置及文件名称,例如:E:\\新建文件夹\\newfile.txt");
path = scanner.nextLine();
System.out.println("请输入要写入文件的内容");
str = scanner.nextLine();
Write(path, str);
break;
case"5":
menu();
break;
case"6":
System.exit(0);
break;
}
}
}
public static void Crete(String path) throws IOException {
File file = new File(path);
if(file.createNewFile()) {
System.out.println("文件创建成功");
}else{
System.out.println("文件已存在");
}
}
public static void read(String path){
try (BufferedReader reader = new BufferedReader(new FileReader(path))) {
String line;
//读取读取文件内容并打印
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
System.out.println("文件未找到");
}
}
public static void Write(String path,String str) {
try(FileWriter fr = new FileWriter(path)) {
BufferedWriter bufw = new BufferedWriter(fr);
bufw.write(str);
bufw.flush();
bufw.close();
System.out.println("写入成功");
} catch (IOException e) {
e.printStackTrace();
System.out.println("未找到文件");
}
}
public static void menu(){
System.out.println("----请输入对应数字执行相应操作----");
System.out.println("1.新建文件");
System.out.println("2.新建文件夹");
System.out.println("3.读取文件内容");
System.out.println("4.写入内容");
System.out.println("5.显示菜单");
System.out.println("6.退出");
}
}
请各位自己写到idea里编译运行,如果有更好的写法欢迎指出