📄 rms_ex5.java
字号:
//程序名RMS_Ex5.java,项目RMS_Ex5
//测试记录存储的RecordListener事件
import javax.microedition.midlet.*;
import javax.microedition.rms.*;
public class RMS_Ex5 extends MIDlet {
RecordStore rs1 = null;
RecordStore rs2 = null;
RecordListener listener = new RecordListener() {
public void recordAdded(RecordStore recordStore, int recordId) {
try {
System.out.println(" Event: "+recordStore.getName()+" add a record "+recordId);
} catch (Exception e) {
}
}
public void recordChanged(RecordStore recordStore, int recordId) {
try {
System.out.println(" Event: "+recordStore.getName()+" change a record "+recordId);
} catch (Exception e) {
}
}
public void recordDeleted(RecordStore recordStore, int recordId) {
try {
System.out.println(" Event: "+recordStore.getName()+" delete a record "+recordId);
} catch (Exception e) {
}
}
};
public RMS_Ex5() {
//这个例子需要使用一个新的记录存储进行测试,所以要删除旧的文件。
try {
RecordStore.deleteRecordStore("rs_test");
} catch( Exception e ){
// ignore any errors1...
}
//生成一个新的记录存储rs1_test,并有两个引用
try {
rs1 = RecordStore.openRecordStore("rs_test", true );
rs2 = RecordStore.openRecordStore("rs_test", true );
rs1.addRecordListener(listener);
} catch( Exception e ){
// ignore any errors1...
}
}
public void startApp() {
byte[] b_test = "A meeting at GreatWall Hotel, 8:00AM".getBytes();
try {
//测试recordAdded事件,并测试事件方法是如何调用的
System.out.println("Before rs1 add a record");
rs1.addRecord(b_test, 0, b_test.length);
System.out.println("After rs1 add a record");
//测试当记录操作失败时会不会调用事件方法
try {
System.out.println("Add a record, and a error will occur.");
rs1.addRecord(b_test, 0, b_test.length+1);//这里会出现错误
} catch (Exception e) {
System.out.println("the error occured.");
}
//测试recordChanged事件
System.out.println("rs1 change a record");
rs1.setRecord(1,b_test, 0, b_test.length);
//测试recordDeleted事件
System.out.println("rs1 delete a record");
rs1.deleteRecord(1);
//rs2.removeRecordListener(listener);
//rs1和rs2实际上是同一个记录存储对象的引用
System.out.println("rs2 add a record");
rs2.addRecord(b_test, 0, b_test.length);
} catch(RecordStoreException e ){
System.out.println("error , program exist.");
notifyDestroyed();//发生错误,关闭应用程序
}
notifyDestroyed();//运行结束即关闭应用程序
}
public void pauseApp() {
}
public void destroyApp( boolean unconditional ) {
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -