?? serialhashtablerms.java
字號:
package inline.sys;
import java.util.*;
import javax.microedition.rms.*;
import java.io.*;
public class SerialHashtableRMS extends SerialHashtable
{
private boolean loaded;
private String name;
public SerialHashtableRMS(String nname)
{
super();
name = nname;
loaded = false;
}
public void load()
{
// get self from RMS
if (!loaded)
{
try
{
RecordStore recordstore = RecordStore.openRecordStore(name, false);
RecordEnumeration re = recordstore.enumerateRecords(null,null, true);
int rid = re.nextRecordId();
byte ab[] = recordstore.getRecord(rid);
recordstore.closeRecordStore();
deserializeBytes(ab);
}
catch(Exception e)
{
System.err.println("RMS load failed: "+e);
}
loaded = true;
}
}
public void save()
{
// put self into RMS
try
{
byte ab[] = serializeBytes();
RecordStore recordstore = RecordStore.openRecordStore(name, true);
/*System.err.println("RMS info: NRID="+recordstore.getNextRecordID()+
", RDS="+recordstore.getNumRecords()+
", SZ="+recordstore.getSize()+
", ASZ="+recordstore.getSizeAvailable());*/
if(recordstore.getNumRecords() < 1)
recordstore.addRecord(ab, 0, ab.length);
else
recordstore.setRecord(recordstore.getNextRecordID() - 1, ab, 0, ab.length);
recordstore.closeRecordStore();
}
catch(Exception e)
{
System.err.println("RMS save failed: "+e);
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -