📄 bank.java
字号:
package com.feng.atm;
import java.io.*;
public class Bank {
String name=null;
String number=null;
String password=null;
boolean flag=false;
public Bank(){}
public Bank(String name,String number,String password)
{
this.name=name;
this.number=number;
this.password=password;
}
protected void LoginAccount()//登陆帐户
{
AtmBank bank=new AtmBank();
try{
BufferedReader br1=new BufferedReader(new InputStreamReader(System.in));
do{
this.judgeAdmin();
if(flag==true){
System.out.println("用户名和密码输入正确!");
System.out.println("按回车键继续......");
br1.read();
//AtmAccount account=new AtmAccount();
bank.manageMenu();
}else{
for(int i=0;i<2;i++){
int j=2-i;
System.out.println("用户名或密码错误!您还有"+j+"次机会!");//注意java中不能把数学表达式放在输出中
//this.LoginAccount();
this.judgeAdmin();
if(flag==true){
System.out.println("用户名和密码输入正确!");
System.out.println("按回车键继续......");
br1.read();
//AtmAccount account=new AtmAccount();
bank.manageMenu();
}
if(i==1){
System.out.println("对不起,您三次输入的用户名或密码都不对,告诉你吧,管理员用户名:feng,密码:cslg");
System.out.println("按回车键退出......");
br1.read();
System.exit(0);
}
}
}
}while(true);
}catch(Exception e){
e.printStackTrace();
}
}
protected void judgeAdmin()
{
try{
BufferedReader br1=new BufferedReader(new InputStreamReader(System.in));
System.out.println("请输入管理员用户名:");
String admin=br1.readLine();
System.out.println("请输入管理员密码:");
String adminpassword=br1.readLine();
if(admin.equals("feng") && adminpassword.equals("cslg")){
flag=true;
}
}catch(Exception e){
e.printStackTrace();
}
}
protected void openAccount() //开设新户
{
/*
File f=new File("E:/J2se/bankdata.txt");
if(f.exists())
{
try {
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
BufferedReader br1=new BufferedReader(new FileReader("E:/J2se/bankdata.txt"));
String str=br1.readLine();
FileOutputStream fos=new FileOutputStream(f);//执行这句代码,bankdata.txt将被置空
System.out.println("please input account name");
name=br.readLine().trim()+str;
byte bufname[]=name.getBytes();
for(int i=0;i<bufname.length;i++)
{
fos.write(bufname[i]);
}
String str1=br1.readLine().trim();
FileOutputStream fos1=new FileOutputStream(f);//执行这句代码,bankdata.txt将被置空
//this.deleteAccount();
System.out.println("please input account number");
anumber=br.readLine().trim()+str1;
byte bufanumber[]=anumber.getBytes();
for(int i=0;i<bufanumber.length;i++)
{
fos.write(bufanumber[i]);
}
fos.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}else{
try {
f.createNewFile();
openAccount();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
System.out.println("create file success!");
*/
try {
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
BufferedReader br1=new BufferedReader(new InputStreamReader(System.in));
RandomAccessFile raf=new RandomAccessFile("E:/bankdata.txt","rw");//bankdata.txt用来存储开户信息
System.out.println("请添加账户姓名:");
String str=br.readLine()+"\t\t";
raf.seek(raf.length());
raf.writeBytes(str);
System.out.println("请给账户开设卡号:");
String str1=br.readLine()+"\t\t";
raf.seek(raf.length());
raf.writeBytes(str1);
System.out.println("请给帐户开设密码:");
String str2=br.readLine();
raf.seek(raf.length());
raf.writeBytes(str2+"\n");
System.out.println("\n已开户成功!");
raf.close();
System.out.println("\n按回车键继续....");
br1.read();
AtmBank atm=new AtmBank();
atm.manageMenu();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
protected void viewAllAccount()//查看所有账户信息
{
File f=new File("E:/bankdata.txt");
if(f.exists())
{
try {
BufferedReader br=new BufferedReader(new FileReader(f));
BufferedReader br1=new BufferedReader(new InputStreamReader(System.in));
String str=br.readLine();
System.out.println("请稍等,两秒后将显示数据.......");
Thread.sleep(2000);
System.out.println();
System.out.println("数据如下:\n");
if(str==null){//这里为什么不可以用str.equals("")
System.out.println("还没有帐户信息,请开设帐户");
System.out.println("按回车键继续....");
br1.read();
AtmBank atm=new AtmBank();
atm.manageMenu();
}else{
System.out.println("姓名\t\t"+"账户卡号\t\t"+"帐户密码");
while(str!=null){
String[] info=str.split("\n");
//System.out.println(info[0]);
for(int i=0;i<info.length;i++)
{
System.out.println(info[i]);
//System.out.println("test all view");
}
str=br.readLine();//读取下一行内容
}
System.out.println("\n按回车键继续....");
br1.read();
AtmBank atm=new AtmBank();
atm.manageMenu2_1();
}
br.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}else{
try {
f.createNewFile();
this.viewAllAccount();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
protected void viewOneAccount()//查看唯一账户信息
{
boolean flag=false;
File f=new File("E:/bankdata.txt");
if(f.exists())
{
try {
BufferedReader br=new BufferedReader(new FileReader(f));
BufferedReader br1=new BufferedReader(new InputStreamReader(System.in));
String str=br.readLine();
System.out.println("请输入你要查看账户的姓名:");
String searchstr=br1.readLine();
while(str!=null){
String[] info=str.split("\n");
//System.out.println(info[0]);
for(int i=0;i<info.length;i++)
{
if(info[i].indexOf(searchstr)!=-1){
flag=true;
System.out.println("数据如下:");
System.out.println("姓名\t\t"+"账户卡号\t\t"+"帐户密码");
System.out.println(info[i]);
}
}
str=br.readLine();
}
if(flag==false){
System.out.println("没有这个帐户!");
}
System.out.println("\n按回车键继续....");
br1.read();
AtmBank atm=new AtmBank();
atm.manageMenu2_1();
br.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -