📄 writeaccounts.java
字号:
/***********************************************
* 本类用于用户退出登录时向用户帐号文件中写入用户更改过后的数据
* 其中主要有两个方法,setAccountInfo1和setAccountInfo2。
* setAccountInfo1方法主要是当一个新用户注册后,调用该方法
* 及时将新用户的数据写入到用户帐号文件中去;setAccountInfo2
* 方法是当用户完成操作后,需要退出系统时调用该方法,将用户信息
* 更新到用户帐号文件中去,并退出系统
*/
package user;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import util.FactoryClass;
import util.ShowGUI;
public class WriteAccounts {
public static void setAccountInfo(boolean flag) {
if (flag == true) {
setAccountInfo1();
} else {
setAccountInfo2();
}
}
private static void setAccountInfo1() {// 针对新用户的保存
CurrentUser.formatData1();// 将新用户信息添加到存放全体用户信息的allAccounts数组中,以方便保存
try {
BufferedWriter accountWriter = new BufferedWriter(new FileWriter(
"accounts.txt"));
for (int i = 0; i < CurrentUser.userNum; i++) {
accountWriter.write(CurrentUser.allAccounts[i] + '\r' + '\n');
}
accountWriter.close();
} catch (IOException e) {
System.out.println("写入用户帐户文件发生错误");
}
FactoryClass.getInstance(FactoryClass.classNameArray[4]);
// 执行ReadAccounts类,将用户信息从用户帐号文件中重新加载
FactoryClass.getInstance(FactoryClass.classNameArray[1]);
// 显示用户刚登录时的菜单,加载类util.ShowChoice1
}
private static void setAccountInfo2() {
// 针对老用户登录的保存,本次保存后程序将退出
CurrentUser.formatData2();
try {
BufferedWriter accountWriter = new BufferedWriter(new FileWriter(
"accounts.txt"));
for (int i = 0; i < CurrentUser.userNum; i++) {
accountWriter.write(CurrentUser.allAccounts[i] + '\r' + '\n');
}
accountWriter.close();
} catch (IOException e) {
e.printStackTrace();
}
// System.out.println("谢谢您的使用,再见");
ShowGUI.showFace("faceBye.txt");
System.exit(0);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -