1 مرفق
Read and Write to RMS Using J2ME
This Application specially tries to explain how to read and write the data using RecordStore class. In the RecordStore class the following methods are available:
كود:
addRecord(byte[] data, int offset, int numBytes)
addRecordListener(RecordListener listener)
closeRecordStore()
deleteRecord(int recordId)
deleteRecordStore(String recordStoreName)
enumerateRecords(RecordFilter filter, RecordComparator comparator, boolean keepUpdated)
getLastModified()
getName()
getNextRecordID()
getNumRecords()
getRecord(int recordId)
getRecord(int recordId, byte[] buffer, int offset)
getRecordSize(int recordId)
getSize()
getSizeAvailable()
getVersion()
listRecordStores()
openRecordStore(String recordStoreName, boolean createIfNecessary)
removeRecordListener(RecordListener listener)
setRecord(int recordId, byte[] newData, int offset, int numBytes)
The Application is as follows:
http://www.roseindia.net/j2me/readwriterms.gif
http://www.roseindia.net/j2me/consolereadwriterms.gif
كود:
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.io.*;
import javax.microedition.rms.*;
public class ReadWriteRMS extends MIDlet{
private RecordStore rs = null;
static final String REC_STORE = "ReadWriteRMS";
public void startApp(){
openRecStore();
writeRecord("Core J2ME Technology");
writeRecord("J2ME Wireless Toolkit");
readRecords();
closeRecStore();
deleteRecStore();
}
public void pauseApp(){}
public void destroyApp(boolean unconditional){
notifyDestroyed();
}
public void openRecStore(){
try{
rs = RecordStore.openRecordStore(REC_STORE, true );
}catch (Exception e){}
}
public void closeRecStore(){
try{
rs.closeRecordStore();
}catch (Exception e){}
}
public void deleteRecStore(){
if (RecordStore.listRecordStores() != null){
try{
RecordStore.deleteRecordStore(REC_STORE);
}catch (Exception e){}
}
}
public void writeRecord(String str){
byte[] rec = str.getBytes();
try{
rs.addRecord(rec, 0, rec.length);
}catch (Exception e){}
}
public void readRecords(){
try{
byte[] recData = new byte[5];
int len;
for(int i = 1; i <= rs.getNumRecords(); i++){
if(rs.getRecordSize(i) > recData.length){
recData = new byte[rs.getRecordSize(i)];
}
len = rs.getRecord(i, recData, 0);
System.out.println("------------------------------");
System.out.println("Record " + i + " : " + new String(recData, 0, len));
System.out.println("------------------------------");
}
}catch (Exception e){}
}
}
The Code is in the Attachments