⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rms_ex2.java

📁 J2ME 无线通信技术应用开发源代码
💻 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 + -