这是一个模拟atm的 一行三个值 分别是账户 密码 和余额
我可以从txt里读出数据 就是不知道取了钱、存了钱以后我该怎么更新txt里的数据
package atm;
/**
* Created by lenovo on 2016/5/5.
*/
import java.awt.List;
import java.io.*;
import java.util.HashMap;
import java.util.Scanner;
public class c {
public static void readTxtFile(String filePath){
try {
String encoding="GBK";
File file=new File(filePath);
if(file.isFile() && file.exists()){ //判断文件是否存在
InputStreamReader read = new InputStreamReader(
new FileInputStream(file),encoding);//考虑到编码格式
BufferedReader bufferedReader = new BufferedReader(read);
String lineTxt = null;
int line=1;
Scanner sc = new Scanner(System.in);
System.out.println("请输入账户");
int a=sc.nextInt();
HashMap m=new HashMap();
while((lineTxt = bufferedReader.readLine())!= null){
String[] lin=lineTxt.split(" ");
m.put(lin[0]+lin[1],lin[2]);
int zh=Integer.parseInt(lin[0]);
int mm=Integer.parseInt(lin[1]);
if(a==zh){
System.out.println("请输入密码");
int b=sc.nextInt();
if(b==mm){
int g=0;
while(g<4) {
int money = Integer.parseInt(lin[2]);
System.out.println("1.查看余额\n2.取款\n3.存款\n4.退出\n");
int c=sc.nextInt();
{
switch (c) {
case 1:
System.out.println("您账户内余额为:" + money);
g = 1;
break;
case 2:
System.out.println("输入您要取的金额:");
int d = sc.nextInt();
if (d > money) {
System.out.println("余额不足!");
g = 2;
} else {
money -= d;
System.out.println("您账户内余额为:" + money);
g = 2;
}
break;
case 3:
System.out.println("请输入你要存的金额:");
int e = sc.nextInt();
money += e;
System.out.println("您账户内余额为:" + money);
g = 3;
break;
case 4:break;
default:
System.out.println("1.查看余额\n2.取款\n3.存款\n4.退出\n");
g = sc.nextInt();
return;
}
}
}
}
else
{
System.out.println("您输入的密码错误");
}
}else{
System.out.println("您输入的账户不存在");
}
}
read.close();
}else{
System.out.println("找不到指定的文件");
}
}
catch (Exception e) {
System.out.println("读取文件内容出错");
e.printStackTrace();
}
}
public static void main(String arg[]){
String filePath = "C:\\Users\\lenovo\\Desktop\\11.txt";
readTxtFile(filePath);
}
}