到 Google 资讯主页   
EasyJF首页   资料   源码   软件    论坛   网站    
   使用帮助    
    该信息为本站MyRSS系统缓存内容,部分图片及附件有可能无法正常使用.easyjf.comwww.javaresearch.org无关,不对该信息负责.通过http://www.javaresearch.org/article/60987.htm访问该信息的原始内容.
页面功能  【加入收藏】 【推荐给朋友】 【字体:  】 【关闭】   
J2ME中RMS的使用解析(二)
作者: 来源:www.javaresearch.org  发布时间:2007-01-12 13:23:54.717


public int getInt1() { //int 
return int1; 
}
public int getInt2() { 
return int2; 
}
public long getLong1() { 
return long1; 


public String getStr1() { //String 
return str1; 


public String getStr2() { //String 
return str2; 


public String getStr3() { 
return str3; 


public boolean getWroteFlag() { //返回写入标志 
return WroteFlag; 


这个类的使用保证了我们在使用流时,内容的写入和输出。当然,就如同数据库表的设计一样,我们可以任意对每一条记录增加或减少字段,在上面的类中我只使用了int1,int2,long1,str1,str2,str3和WroteFlag一共7个字段。

二、RecordStore的操作。类RMS如下: 
package com.cuilichen.usual; 

import javax.microedition.rms.RecordEnumeration; 
import javax.microedition.rms.RecordStore; 

public class RMS { 
public static final int Int1 = 0;//各个字段的默认数值 
public static final int Int2 = 0; 
public static final long Long1 = 0; 
public static final String Str1 = ""; 
public static final String Str2 = ""; 
public static final String Str3 = ""; 

public static boolean addRecord(String name, int int1, int int2,//添加记录 
long long1, String str1, String str2, String str3, boolean b) { 
boolean success = false; 

try { 
RecordStore rs = RecordStore.openRecordStore(name, true); 
Appointment app = new Appointment(int1, int2, long1, str1, str2,str3, b); 
//既然str1作为保留字段,我们在这里就要如此操作:例如int1为我们设定的关键字,那么str1 = Integer.toString(int1); 
byte[] data = app.toBytes(); 
rs.addRecord(data, 0, data.length); 
rs.closeRecordStore(); 
success = true; 
} catch (Exception e) { 
e.printStackTrace(); 
}
return success; 
}
public static int getNumOfRecords(String name) {//得到RMS中记录的条数 
try { 
RecordStore rs = RecordStore.openRecordStore(name, true); 

return rs.getNumRecords(); 
} catch (Exception e) { 
return 0; 



public static Appointment[] getRecords(String name) {//取得RMS中的所有记录 
Appointment[] result = { }; 

try { 
RecordStore rs = RecordStore.openRecordStore(name, false); 
RecordEnumeration re = rs.enumerateRecords(null, null, false); 
result = new Appointment[rs.getNumRecords()]; 

for (int i = 0; i < result.length; i++) { 
int j = re.previousRecordId(); 
Appointment app = new Appointment(rs.getRecord(j)); 
result = app; 

//System.out.println("app["+i+"] "+app.getStr2()); 


rs.closeRecordStore(); 
} catch (Exception e) { 


return result; 




 
相关文章
 
页面功能  【加入收藏】 【推荐给朋友】 【字体:  】 【关闭】   


EasyJF.com 2006 隐私政策 使用EasyJF前必读