📄 productdb.java
字号:
/* * ProductDb.java * 用于在通过记录文件读入与保存产品记录 * Created on 2004年2月7日, 下午8:50 */import javax.microedition.rms.*;import java.lang.*;import java.util.*;/** * * @author wenyy * @version */public class ProductDb { public static final String recName="antiJP"; //记录文件名称 public RecordStore rec=null; //保存记录文件对象 public ProductDb() { } //从记录文件中读入所有产品记录 public int readFromDb(Vector array) { int size = 0; if(! isDbExist()) // 记录文件不存在 return size; if(!openDb()) // 打开记录文件失败 return size; RecordEnumeration enum = openAllRecord(false); while(enum.hasPreviousElement()) {//读入所有记录 try { byte[ ] read = enum.previousRecord(); String s = new String(read); array.addElement( s); size ++; } catch(Exception e) { break; //出现错误时退出 } } enum.destroy(); closeDb(); return size; } //将数组中所有记录写入记录文件,先删除原有记录文件并重建 public void writeIntoDb(Vector array) { if( isDbExist()) { // 记录文件存在则删除原文件 deleteDb(); } if( !createDb()) //无法创建记录文件 return; if( !openDb()) //无法打开记录文件 return; for(int i=0;i<array.size();i++) { String s = (String)array.elementAt(i); byte[] write = s.getBytes(); try { rec.addRecord(write, 0, write.length); } catch(Exception e){ } } closeDb(); //关闭记录文件并退出 } //下面的方法是对RMS 功能的封装 //检测记录文件是否存在 public boolean isDbExist() { try {//打开然后关闭记录文件,通过异常类型来判断记录文件是否存在 RecordStore rs = RecordStore.openRecordStore(recName, false); rs.closeRecordStore(); rs=null; } catch(RecordStoreFullException e1) { return true;} catch(RecordStoreNotFoundException e2){//捕捉到记录不存在的错误,表示记录文件不存在 return false; } catch(RecordStoreException e3) { } return true; } //打开记录文件 public boolean openDb() { try { rec = RecordStore.openRecordStore(recName, false); return true; } catch(Exception e) { } return false; } //关闭记录文件 public boolean closeDb() { if(rec != null) { try { rec.closeRecordStore(); rec = null; return true; } catch(Exception e) { } } return false; } //创建记录文件 public boolean createDb() { //创建文件前请先检查记录文件是否已经存在 try{//通过打开记录文件的方式来进行创建 RecordStore rs = RecordStore.openRecordStore(recName, true); rs.closeRecordStore(); rs=null; return true; } catch(Exception e){ } return false; } //删除记录文件 public boolean deleteDb() { //删除文件前请先检查记录文件是否已经存在 try { RecordStore.deleteRecordStore(recName); return true; } catch(Exception e) { } return false; } //打开所有包含所有记录的结果集 public RecordEnumeration openAllRecord(boolean autoUpdate) { RecordEnumeration enum = null; try{ enum = rec.enumerateRecords(null, null, autoUpdate); } catch (Exception e) { } return enum; } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -