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

📄 recordorder.java

📁 jBuilderX无线应用开发源代码
💻 JAVA
字号:
import javax.microedition.midlet.*;
import javax.microedition.rms.*;
import javax.microedition.lcdui.*;
import java.io.*;

//********************************************************
// 用于排序的比较器类
//********************************************************
class Comparator implements RecordComparator {
     public int compare(byte[] rec1, byte[] rec2)
     {
        int result = 0;
        try{
            DataInputStream dis1 = new DataInputStream(new ByteArrayInputStream(rec1));
            DataInputStream dis2 = new DataInputStream(new ByteArrayInputStream(rec2));
            String str1 = dis1.readUTF();
            String str2 = dis2.readUTF();
            result = str1.compareTo(str2);
        }catch(Exception e)
        {
            System.out.println("Error: " + e.getMessage());
        }
        
        if (result == 0){       //两条记录相同
            return RecordComparator.EQUIVALENT;
        }
        else if (result < 0)    //第一条记录位于第二条之前
             return RecordComparator.PRECEDES;
        else                    //第一条记录位于第二条之后
             return RecordComparator.FOLLOWS;
     }
}

public class RecordOrder extends MIDlet {
    private RecordStore rs;              
    private RecordEnumeration re;    //枚举器
    private Comparator rc;           //比较器
    private Display display;
    
    public RecordOrder () {
        rs = null;                  //RecordStore
        re = null;                  //RecordEnumeration
        rc = new Comparator();      //RecordComparator
        display = Display.getDisplay(this);
    }
    
    public void startApp() {
        try {
            rs = RecordStore.openRecordStore("myRecordStore", false);
            //创建带有比较器rc的枚举器实例
            re = rs.enumerateRecords(null, rc, false);
            System.out.println("There are " + re.numRecords() + " records in RecordStore");   
            while (re.hasNextElement())
            {
                byte [] temp = re.nextRecord();
                ByteArrayInputStream bis = new ByteArrayInputStream(temp);
                DataInputStream dis = new DataInputStream(bis);
                System.out.println(dis.readUTF());
                System.out.println("--------------------");
            }
        }catch(Exception e){
            System.out.println("Error: " + e.getMessage());
        }
        
        try{
            //释放RecordEnumeration所占用的资源
            re.destroy();
            rs.closeRecordStore();
        }catch(Exception e){
            System.out.println("Error: " + e.getMessage());
        }
    }
        
    public void pauseApp(){
    }
    
    public void destroyApp(boolean unconditional){
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -