📄 model.java
字号:
package com.j2medev.chapter4;
import javax.microedition.rms.*;
import java.io.*;
public class Model {
private RecordStore accountStore = null;
public static final String RNAME = "account";
public Model() {
//打开RecordStore对象,如果不存在就创建一个。
try {
accountStore = RecordStore.openRecordStore(RNAME, true);
} catch (RecordStoreException e) {
e.printStackTrace();
}
}
//关闭RecordStore对象
public void closeRecordStore() {
try {
accountStore.closeRecordStore();
} catch (RecordStoreException e) {
e.printStackTrace();
}
}
//存储Account对象
public void saveAccount(Account account) {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
DataOutputStream dos = new DataOutputStream(baos);
try {
account.serialize(dos);
byte[] data = baos.toByteArray();
accountStore.addRecord(data, 0, data.length);
dos.close();
} catch (IOException e) {
//处理异常
e.printStackTrace();
} catch (RecordStoreException e) {
//处理异常
e.printStackTrace();
}
}
//读取recordId对象
public Account getAccount(int recordID) {
try {
if (accountStore.getNumRecords() > 0) {
byte[] data = accountStore.getRecord(recordID);
ByteArrayInputStream bais = new ByteArrayInputStream(data);
DataInputStream dis = new DataInputStream(bais);
Account account = Account.deserialize(dis);
dis.close();
return account;
}
return null;
} catch (IOException e) {
//处理异常
return null;
} catch (RecordStoreException e) {
//处理异常
return null;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -