两个用户正在交流,使用打印流把聊天记录输出文档中【格式:时间-用户名-聊天语句】。
import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.io.UnsupportedEncodingException;
import java.text.SimpleDateFormat;
import java.util.*;
/**
* @ClassName Work_1
* @Description 场景:两个用户正在交流,使用打印流把聊天记录输出文档中【格式:时间-用户名-聊天语句】。
* @Author chenxys
* @Date 2022/2/18 17:47
* @Version
*/
public class Work_1 {
public static long time;
public static Date date;
public static String play1 = "Tom";
public static String play2 = "Judy";
public static void main(String[] args) throws FileNotFoundException, UnsupportedEncodingException {
chat();
}
//
public static void chat() throws FileNotFoundException, UnsupportedEncodingException {
PrintWriter printWriter = new PrintWriter("/Users/chenys/Desktop/20220218陈仁富/work_1/record.txt","UTF-8");
Scanner in = new Scanner(System.in);
System.out.println("聊天系统正式启动(按q退出):");
while (true){
System.out.printf("请%s输入你要聊天的内容(q退出):",play1);
String p1 = in.next();
time = System.currentTimeMillis();
date = new Date(time);
if (p1.equals("q")) {
printWriter.println(date.toString()+"\t"+play1+"\t"+"退出聊天");
printWriter.flush();
printWriter.close();
break;
}
printWriter.println(date.toString()+"\t"+play1+"\t"+p1);
System.out.printf("请%s输入你要聊天的内容(q退出):",play2);
String p2 = in.next();
time = System.currentTimeMillis();
date = new Date(time);
if (p2.equals("q")) {
printWriter.println(date.toString()+"\t"+play2+"\t"+"退出聊天");
printWriter.flush();
printWriter.close();
break;
}
printWriter.println(date.toString()+"\t"+play2+"\t"+p2);
}
}
}
老师讲解版 :
import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.io.UnsupportedEncodingException;
import java.text.SimpleDateFormat;
import java.util.*;
public class Work_1 {
//使用自定义时间格式
public static SimpleDateFormat sm = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
public static String play1 = "Tom";//用户1
public static String play2 = "Judy";//用户2
public static Scanner in = new Scanner(System.in);//用户输入流
public static void main(String[] args) throws FileNotFoundException, UnsupportedEncodingException {
chat();
}
//
public static void chat() throws FileNotFoundException, UnsupportedEncodingException {
PrintWriter printWriter = new PrintWriter("/Users/chenys/Desktop/test1/record.txt","UTF-8");//文件存储位置,编码
System.out.println("聊天系统正式启动(按q退出):");
while (true){
System.out.printf("请%s输入你要聊天的内容(q退出):",play1);
String p1 = in.next();//获取p1的输入
//获取当前时间
String date = sm.format(new Date());//获取当前时间,并使用自定义时间格式
if (p1.equals("q")) {//如果用户输入了q,则退出循环
printWriter.println(date+"\t"+play1+"\t"+"退出聊天");
printWriter.flush();//将聊天记录刷新写入到持久层
in.close();//关闭用户输入流
printWriter.close();//关闭打印流
break;//退出循环
}
printWriter.println(date+"\t"+play1+"\t"+p1);
System.out.printf("请%s输入你要聊天的内容(q退出):",play2);
String p2 = in.next();//获取p2的输入
date = sm.format(new Date());//获取当前时间,并使用自定义时间格式
if (p2.equals("q")) {//如果用户输入了q,则退出循环
printWriter.println(date+"\t"+play2+"\t"+"退出聊天");
printWriter.flush();//将聊天记录刷新写入到持久层
in.close();//关闭用户输入流
printWriter.close();//关闭打印流
break;//退出循环
}
printWriter.println(date+"\t"+play2+"\t"+p2);
}
}
}
结果: