📄 scan03.java
字号:
package flow;
import java.io.ByteArrayInputStream;
import java.io.DataInputStream;
import java.io.IOException;
import javax.microedition.lcdui.Choice;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.List;
import javax.microedition.rms.InvalidRecordIDException;
import javax.microedition.rms.RecordEnumeration;
import javax.microedition.rms.RecordStore;
import javax.microedition.rms.RecordStoreException;
import javax.microedition.rms.RecordStoreFullException;
import javax.microedition.rms.RecordStoreNotFoundException;
import javax.microedition.rms.RecordStoreNotOpenException;
import rms.Account;
public class scan03 extends List implements CommandListener {
private Display display;
private List main;
private RecordStore recordStore;
int recordId;
Command lookcmd = new Command("查阅详情", Command.OK, 3);
Command backcmd3 = new Command("返回", Command.BACK, 5);
public scan03(Display display3, List main3) {
super("浏览信息", Choice.IMPLICIT);
this.display = display3;
this.main = main3;
// setSelectedIndex(1, true);
readInfo();
addCommand(lookcmd);
addCommand(backcmd3);
setCommandListener(this);
}
public void commandAction(Command c1, Displayable arg1) {
if (c1 == backcmd3) {
display.setCurrent(main);
} else if (c1 == lookcmd) {
readInfo();
}
}
public void readInfo() {
try {
recordStore = RecordStore.openRecordStore("tel", true);// 在每一个新程序中,需先打开数据库然后再进行其它程序的写入
} catch (RecordStoreFullException e1) {
e1.printStackTrace();
} catch (RecordStoreNotFoundException e1) {
e1.printStackTrace();
} catch (RecordStoreException e1) {
e1.printStackTrace();
}
RecordEnumeration re = null;// RecordEnumeration枚举函数,在读取时使用
try {
re = recordStore.enumerateRecords(null, null, true);// 过滤,比较,更新
} catch (RecordStoreNotOpenException e1) {
e1.printStackTrace();
}
while (re.hasNextElement()) {
byte[] data = null;
try {
data = re.nextRecord();
} catch (InvalidRecordIDException e1) {
e1.printStackTrace();
} catch (RecordStoreNotOpenException e1) {
e1.printStackTrace();
} catch (RecordStoreException e1) {
e1.printStackTrace();
}
Account ra = Account.decode(data);//先由Account声明ra ,再由ra接收Account.decode(data)
//因decode属于取出的方法,故不能像AddFirend02中的encode那样使用
append("姓名:" + ra.getName(), null);//这里的返回值getName,getTel..因调用的是Account类,所以可以与之前定义的这几个方法名不相同
append("移动电话:" + ra.getTel(), null);
append(ra.getMobileTel(), null);
append(ra.getEmail(), null);
}
// ByteArrayInputStream bis = new ByteArrayInputStream(data);
// DataInputStream dis = new DataInputStream(bis);
// try {
// String name = dis.readUTF();
// String mobile = dis.readUTF();
// String phone02 = dis.readUTF();
// String email02 = dis.readUTF();
// append("姓名:" + name, null);
// append("移动电话:" + mobile, null);
// // append(phone02, null);
// // append(email02, null);
// }
// catch (IOException e) {
// e.printStackTrace();
// }
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -