黑马程序员技术交流社区

标题: 博客小程序 [打印本页]

作者: Flyxiang    时间: 2016-12-18 23:18
标题: 博客小程序
package cn.itcast07;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.text.Format;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Scanner;

public class Test01 {
/*
* 1.        在项目根路径下建2个文件,"data.txt"和"result.txt",2个文件分别存储用户密码和
* 保存博客内容,其中"data.txt"中用户名和密码存储格式为,
* jack:123(文件中的用户名和密码可以手动输入,不需要用程序录入)
2.        程序运行后,在控制台提示:1.登陆  2.写博客 3.退出登陆
2.1        如:键盘输入1,执行用户登录操作,提示用户输入用户名和密码,根据键盘录入的用户名和密码
和"data.txt"中的用户名密码进行匹配,匹配成功,控制台提示登录成功,否则控制台提示登录失败
2.2         如:键盘输入2,执行写博客操作,写博客操作需要用户登录后才能写,如用户登录成功后执行写博客操作,
可在控制台输入想写的话,并将输入的话保存到"result.txt"中,要求保存到"result.txt"中的内容包含:
保存时的时间(格式为:2016-09-05 09:22)和控制台输入的字符串,各占一行;
如用户没有登录或者登录失败时执行写博客,控制台提示"你尚未登陆,请先登陆!"
2.3         输入3,执行退出登录操作,退出登录只是记录用户退出的状态,并不是退出程序
2.4         如输入其他值,执行退出程序操作,并在控制台提示"程序退出!"
要求:除退出程序的操作外,所有的操作完后都需跳回到初始界面:1.登陆  2.写博客 3.退出登陆

*/
        public static void main(String[] args) throws Exception {
                int m = 0;

                //无限循环
                while (true){
                        System.out.println("请根据需求输入相应的编号\r\n1 :登陆;2:写博客;3:退出登陆");
                        int n=input().nextInt();
                switch(n){
                case 1:
                        System.out.println("登陆");
                       
                        m=login();
                        break;
                case 2:
                        if(m==1){
                                writeBoke();
                        }else{
                                System.out.println("您尚未登陆 ,请先登陆");
                        }
                        break;
                case 3:
                        System.out.println("退出登陆");
                        break;
                default:
                        System.out.println("退出程序");
                        System.exit(0);
                }
                }
        }
        //写博客
        private static void writeBoke() throws Exception {
                String time=time();
                System.out.println("请写博客");
                String line=input().nextLine();
                BufferedWriter bw=new BufferedWriter(new FileWriter("result.txt"));
                bw.write(time);
                bw.flush();
                bw.newLine();
                bw.write(line);
                bw.flush();
                bw.newLine();
                bw.close();
               
               
}

        //获取现在时刻
        private static String time() {
       
                Calendar ins = Calendar.getInstance();
                Date time = ins.getTime();
                Format f=new SimpleDateFormat("yyyy-MM-dd hh:mm");
                String time2 = f.format(time);
        return time2;
}

        //登陆
        private static int login() throws Exception {

                System.out.println("请输入用户名:");
                String name=input().next();
                System.out.println("请输入密码");
                String password=input().next();
                String s=name+":"+password;
               
                BufferedReader br=new BufferedReader(new FileReader("username.txt"));

                String line=null;
                int count=0;
                while((line=br.readLine())!=null){
                        if(line.equals(s)){
                                count++;
                        }
                }
                br.close();
                return count;
        }

        //Scanner
        public static Scanner input(){
                return new Scanner(System.in);
        }
}





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2