📄 bank_record.java
字号:
//***********************************************************
//建立处理保存数据的DataFile类
//***********************************************************
import java.io.*;
import java.util.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import javax.swing.border.*;
import javax.swing.table.*;
class Bank_Record {
public Bank_Record(String name,long number,double nowAmount) {
this.name=name;
this.number=number;
this.nowAmount=nowAmount;
}
public Bank_Record() {}
public String getName() {
return name;
}
public long getNumber() {
return number;
}
public double getNowAmount() {
return nowAmount;
}
public static void save_BR(String name,long number,double nowAmount) {
//***************** 以下是保存文件操作 ******************************
try {
//保存设置的密码
Bank_Record oner=new Bank_Record(name,number,nowAmount);
DataOutputStream out=new DataOutputStream(new
FileOutputStream("bank_record.dat"));
oner.writeData(out);
out.close();
}
catch(IOException ioe) {
System.out.print("Error: "+ioe);
System.exit(1);
}
//****************** 结束保存输入的操作 ********************************
}
public static Bank_Record open_BR() {
Bank_Record[] record={null};
//***************** 以下是提取文件操作 ******************************
try {
RandomAccessFile in=new
RandomAccessFile("bank_record.dat","rw");
int n=(int)(in.length()/Bank_Record.RECORD_SIZE);
record=new Bank_Record[n];
for(int i=n-1;i>=0;i--) {
record[i]=new Bank_Record();
in.seek(i*Bank_Record.RECORD_SIZE);
record[i].readData(in);
}
}
catch(IOException ioe) {
System.out.print("Error: "+ioe);
System.exit(1);
}
//********************* 结束提取文件 ********************************
return record[0];
}
public void writeData(DataOutput out) throws IOException {
DataIO.writeFixedString(name,NAME_SIZE,out);//40
out.writeLong(number);//8
out.writeDouble(nowAmount);//8
}
public void readData(DataInput in) throws IOException {
name=DataIO.readFixedString(NAME_SIZE,in);
number=in.readLong();
nowAmount=in.readDouble();
}
public static final int NAME_SIZE=40;
public static final int RECORD_SIZE
=2*NAME_SIZE+2*8;
private String name;
private long number;
private double nowAmount;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -