📄 rms_ex2.java
字号:
//程序名RMS_Ex2.java,项目RMS_Ex2
//测试记录存储中记录的增加、删除、修改和取值。
import javax.microedition.midlet.*;
import javax.microedition.rms.*;
public class RMS_Ex2 extends MIDlet {
static final String rsName = "MYPLAN";
RecordStore rs = null;
public RMS_Ex2() {
//这个例子需要使用一个新的记录存储进行测试,所以要删除旧的文件。
try {
RecordStore.deleteRecordStore(rsName);
} catch( Exception e ){
// ignore any errors...
}
//生成一个新的记录存储MYPLAN
try {
rs = RecordStore.openRecordStore( rsName, true );
} catch( Exception e ){
// ignore any errors...
}
}
public void startApp() {
try {
byte[] data1 = "Sunday, go to cinema.".getBytes();
byte[] data2 = "Monday, go to school.".getBytes();
byte[] data3 = "Tuesday, watch TV.".getBytes();
byte[] data4 = "Wednesday, read a book.".getBytes();
byte[] data5 = "Thursday, go fishing.".getBytes();
byte[] data6 = "Friday, attend a meeting.".getBytes();
int recordID = 0;//初始化一个整数
//添加记录
System.out.println("before added, Total num is "+rs.getNumRecords());
recordID =rs.addRecord( data1, 0, data1.length );
System.out.println("recordID "+recordID+" added, Total num is "+rs.getNumRecords());
recordID =rs.addRecord( null,0,0);
System.out.println("recordID "+recordID+" added, Total num is "+rs.getNumRecords());
recordID =rs.addRecord( data2, 8, data2.length-9);
System.out.println("recordID "+recordID+" added, Total num is "+rs.getNumRecords());
recordID =rs.addRecord( data3, 0, 0);
System.out.println("recordID "+recordID+" added, Total num is "+rs.getNumRecords());
recordID =rs.addRecord( data4, 0, data4.length);
System.out.println("recordID "+recordID+" added, Total num is "+rs.getNumRecords());
//删除记录
rs.deleteRecord(recordID);
System.out.println("recordID "+recordID+" deleted, Total num is "+rs.getNumRecords());
recordID =rs.addRecord( data5, 0, data5.length);//注意这条记录的recordID
System.out.println("recordID "+recordID+" added, Total num is "+rs.getNumRecords());
//修改记录
rs.setRecord( recordID, data6, 0, data6.length);
System.out.println("recordID "+recordID+" modifyed, Total num is "+rs.getNumRecords());
//查看记录
for (int i = 1; i<=4; i++) {
if (rs.getRecord(i) == null) {
System.out.print("recordID "+i+" is NULL.");
} else {
System.out.print("recordID "+i+" :"+new String(rs.getRecord(i)));
}
System.out.println(" ==> size :"+rs.getRecordSize(i));//
}
try {
System.out.print("recordID 5 :"+new String(rs.getRecord(5)));
System.out.println("==> size :"+rs.getRecordSize(5));//
} catch (InvalidRecordIDException IRIDEe){
System.out.println("recordID 5 is invalid, can not get it.");
} catch (Exception other_e){
System.out.println("Other error : "+other_e.getMessage());
}
byte[] tempdata = new byte[rs.getRecordSize(6)];
int getBytes = rs.getRecord(6,tempdata,0);
System.out.print("recordID 6 ,get "+getBytes+" bytes :"+new String(tempdata));
System.out.println(" ==> size :"+rs.getRecordSize(6));//
int offset = 5;//偏移量
tempdata = new byte[rs.getRecordSize(6)+offset];
for (int i = 0;i<tempdata.length;i++) {
tempdata[i] = (byte)'*';
}//初始化tempdata数组中每个字节为字符'*'
getBytes = rs.getRecord(6,tempdata,offset);
System.out.print("recordID 6 ,offset is "+offset+", get "+getBytes+" bytes :"+new String(tempdata));
System.out.println(" ==> size :"+rs.getRecordSize(6));//
} 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 + -