java编写日记本

编写一个模拟日记本的程序,通过在控制台输入指令,实现在本地新建日记本、打开日记本和修改日记本等功能。

(1) 用户输入指令1代表“新建日记本”,从控制台获取用户输入的日记内容。

(2) 指令2代表“打开日记本”,读取指定路径的txt文件的内容并输出到控制台。

(3) 指令3代表“修改日记本”,修改日记时,既可以修改新建日记本的内容,也可以修改已打开日记本的内容。

(4) 指令4代表“保存”,如果是新建的日记本需要保存,则将日记本保存到用户输入的路径;如果是打开的日记本需要保存,则将原来内容覆盖;

(5) 指令5代表“退出”,即退出本系统。

综合考验对于Java语言理解,while循环,if循环,swith选择,调用方法,创建新对象,输入输出语句,stringbuilder容器,try,catch捕捉异常,io流,file中的读和写,system的用法。同时程序无论怎样输入都不报错,在真实的场景中也可以避免用户的数据丢失。

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;
import static java.lang.System.exit;
public class NO5 {
   
    //new一个Scanner,用static修饰后可被所有方法调用,提高代码的简洁性
    static Scanner in = new Scanner(System.in);
    //用StringBuilder当做容器来装字符串,在单线程在比StringBuffer更加快捷
    static StringBuilder stringBuilder1 = new StringBuilder();
    static StringBuilder stringBuilder2 = new StringBuilder();
    //定义一个str路径,被static修饰后可以被所有方法调用,提高代码的简洁性
    static String str;//打开的路径
    //定义open的打开状态,避免没有打开日记本的情况下修改日记本报错
    static int open_result = 0;
    //定义new的打开状态,避免没有新建日记本的情况下修改日记本报错
    static int new_result = 0;
    //主线程main方法中尽量减少代码,提高程序运行的速度
    public static void main(String[] args)  {
   
        while (true) {
   
            Menu1();
            try {
   
                Operate1();
            } catch (Exception e) {
   
                throw new RuntimeException(e);
            }
        }
    }
    //循环菜单进行选择
    public static void Menu1() {
   
        System.out.println("南阳理工计软实验日记本系统");
        System.out.println("指令1代表“新建日记本”,为您输入的日记内容");
        System.out.println("指令2代表“打开日记本”,读取指定路径的txt文件的内容并输出到控制台");
        System.out.println("指令3代表“修改日记本”,修改日记时,既可以修改新建日记本的内容,也可以修改已打开日记本的内容");
        System.out.println("指令4代表“保存”,如果是新建的日记本需要保存,则将日记本保存到您输入的路径;如果是打开的日记本需要保存,则将原来内容覆盖 ");
        System.out.println("指令5代表“退出”,即退出本系统");
    }
    public static void Operate1() throws Exception {
   
        System.out.print("请输入您的指令:");
        int Operate1_ = in.nextInt();
        switch (Operate1_) {
   
            case 1 -> New();
            case 2 -> Open();
            case 3 -> Alter();
            case 4 -> Save();
            case 5 -> exit(0);
            default -> System.out.println("请输入正确的指令1-5");
        }
    }
    public static void New() {
   
        new_result++;
        System.out.print("请输入内容:");
        stringBuilder1 = new StringBuilder(in.next());
        System.out.println("您输入的内容为:" + stringBuilder1);
        System.out.println("新建成功");
    }
    public static void Open() throws Exception {
   
        open_result++;
        System.out.print(
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我是个敬业人质

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值