当前位置:首页 > 全部子站 > IT > 思科认证

J2ME手机游戏:获取RecordStore相关信息

来源:长理培训发布时间:2017-12-21 16:06:37

 百度广告

  介绍一些记录存储本身包含的获取信息的相关方法。每个RecordStore对象都包含标头与数据区,标头记录数据列的信息,数据区储存数据记录,详见示例7-2.

  在RecordStore对象中存取数据时,要遵守以下基本流程与规范

  当对RecordStore进行文件储存时,记录数的初始值为零,每增加一条记录则加一,删除时则减一。记录数的值有助于了解记录储存条数。

  取得下一条记录的recordID,用于下一条记录的储存或修改。

  RecordStore版本编号, RecordStore对象里的数据有任何变动,包括新增、删除或修改时,版本编号也会跟着改变。它可以用于判断RecordStore对象是否被修改过。

  有了这些特性,就能够取得它们对应的RecordStore对象信息

  l public int getNumRecords()

  throws RecordStoreNotOpenException

  取得当前RecordStore里记录的条数。

  l public int getNextRecordID()

  throws RecordStoreNotOpenException,

  RecordStoreException

  取得RecordStore里要记录的下一条数据的recordID.

  l public int getVersion()

  throws RecordStoreNotOpenException

  取得当前的RecordStore版本编号,只要它被修改过编号就会增加。

  l public int getSize()

  throws RecordStoreNotOpenException

  取得RecordStore所占用的字节大小。

  l public long getLastModified()

  throws RecordStoreNotOpenException

  取得RecordStore最近一次被修改的时间。

  l public int getSizeAvailable()

  throws RecordStoreNotOpenException

  取得RecordStore可以增加的数据量空间,返回值以byte为单位。

|||

  示例7-2

  /×

  取得记录存储各项信息的程序代码

  ×/

  import Javax.microedition.midlet.×;

  import Javax.microedition.lcdui.×;

  import Javax.microedition.rms.×;

  public class recordData2 extends MIDlet implements CommandListener

  {

  Display display;

  List list;

  Command okCommand;

  Command exitCommand;

  RecordStore rs;

  Alert alert;

  int num;

  public recordData2()

  {

  alert=new Alert("所有信息");

  display=Display.getDisplay(this);

  list=new List("记录存储所有信息列表", List.EXCLUSIVE);

  okCommand = new Command("确认", Command.OK, 2);

  exitCommand = new Command("离开", Command.EXIT, 2);

  list.append("新建RecordC", null);

  list.append("增加一条记录",null);

  list.append("查看RecordStore记录数据",null);

  list.append("查看RecordStore版本数据",null);

  list.addCommand(okCommand);

  list.addCommand(exitCommand);

  list.setCommandListener(this);

  }||| 

  {

  display.setCurrent(list);

  }

  public void pauseApp(){}

  public void destroyApp(boolean unconditional){}

  public void commandAction(Command cmd, Displayable disp)

  {

  if (cmd == okCommand)

  {

  switch(list.getSelectedIndex()){

  case 0

  //创建记录存储RecordC

  try{

  rs=RecordStore.openRecordStore("RecordC",true);

  }catch(Exception ex){}

  alert.setString("RecordC创建完成");

  break;

  case 1

  //增加一条新记录

  try{

  byte recordData=new byte[1024];

  recordData[0]=1;

  rs.addRecord(recordData, 0, 1);

  }catch(RecordStoreException rsnoe){}

  alert.setString("增加一条记录");

  break;

  case 2

  //取得当前的记录条数和下一条记录的recordID

  try{

  alert.setString("记录条数:"+rs.getNumRecords()+

  " 下一条记录recordID:"+rs.getNextRecordID());

责编:罗莉

发表评论(共0条评论)
请自觉遵守互联网相关政策法规,评论内容只代表网友观点,发表审核后显示!

国家电网校园招聘考试直播课程通关班

  • 讲师:刘萍萍 / 谢楠
  • 课时:160h
  • 价格 4580

特色双名师解密新课程高频考点,送国家电网教材讲义,助力一次通关

配套通关班送国网在线题库一套

课程专业名称
讲师
课时
查看课程

国家电网招聘考试录播视频课程

  • 讲师:崔莹莹 / 刘萍萍
  • 课时:180h
  • 价格 3580

特色解密新课程高频考点,免费学习,助力一次通关

配套全套国网视频课程免费学习

课程专业名称
讲师
课时
查看课程
在线题库
面授课程更多>>
图书商城更多>>
在线报名
  • 报考专业:
    *(必填)
  • 姓名:
    *(必填)
  • 手机号码:
    *(必填)
返回顶部