当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:13:00  来源:本站整理

J2ME中RMS的操纵解析[Java编程]

赞助商链接



  本文“J2ME中RMS的操纵解析[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

在J2ME中,RMS作为唯一的永久性存储工具,其重要性是不言而喻的.但是很多方才开始学习J2ME的新人老是抱怨在这方面的资料很少,大概是针对性不强.因此,我想把自己在这方面的一些学习心得和大家交流一下.

RMS即Record Manager System,在手机利用中常常作为得分记录、游戏信息存储等的工具利用.

RMS的利用可以分为两个部份:1、单一记录的构造;2、RecordStore的利用和操作.下面就这两方面举行具体阐明.

1、单一记录的构造.我们在存储记录时大概需求记录很多类似的条目,在这里我们可以把这种构造当作数据库,我们在这一步就是要构造数据库中的一行,即单一记录的构造.程序的源码以下:

package com.cuilichen.usual;
import java.io.ByteArrayInputStream;//要利用到的各种输入输出流
import java.io.ByteArrayOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;

public class Appointment {//单一记录的类名
   private int int1; //
   private int int2; //
   private long long1;
   private String str1; //str1作为保存字段,记录检索的关键字
   private String str2; //
   private String str3; //
   private boolean WroteFlag; //
public Appointment() {
   }
public Appointment(int _int1, int _int2, long _long1, String _str1,
     String _str2, String _str3, boolean _WroteFlag) {
     this.int1 = _int1; //写入RMS的构造函数
     this.int2 = _int2;
     this.long1 = _long1;
     this.str1 = _str1;
     this.str2 = _str2;
     this.str3 = _str3;
     this.WroteFlag = _WroteFlag;
   }
public Appointment(byte[] rec) {
     initAppointmnet(rec); //读取RMS内容的构造函数
   }
public byte[] toBytes() { //写成字节
byte[] data = null;
try {
       ByteArrayOutputStream baos = new ByteArrayOutputStream();
       DataOutputStream dos = new DataOutputStream(baos);
       dos.writeInt(int1);
       dos.writeInt(int2);
       dos.writeLong(long1);
       dos.writeUTF(str1);
       dos.writeUTF(str2);
       dos.writeUTF(str3);
       dos.writeBoolean(WroteFlag);
       data = baos.toByteArray();
       baos.close();
       dos.close();
     } catch (Exception e) {
       e.printStackTrace();
     }
     return data;
   }
public void initAppointmnet(byte[] rec) { //从字节读取内容
ByteArrayInputStream bais = new ByteArrayInputStream(rec);
     DataInputStream dis = new DataInputStream(bais);
try {
       int1 = dis.readInt();
       int2 = dis.readInt();
       long1 = dis.readLong();
       str1 = dis.readUTF();
       str2 = dis.readUTF();
       str3 = dis.readUTF();
       WroteFlag = dis.readBoolean();
     } catch (Exception e) {
       e.printStackTrace();
     }
   }
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个字段.


  以上是“J2ME中RMS的操纵解析[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • j2me创意-Wap浏览器的源代码
  • J2ME中读取Unicode和UTF-8编码文件
  • J2ME中的底子碰撞检测算法浅析
  • <b>关于j2me game双缓冲实现根究</b>
  • J2ME游戏开辟学习之用setClip分割图片
  • 在J2ME/MIDP中实现图象旋转
  • 初学j2me必读 网友学习笔记
  • 操纵J2ME程序测试MIDlet的生命周期
  • J2ME中操纵缓存将屏幕内容存储为Image
  • 操纵J2ME技术开辟RPG游戏之按键处理机制
  • J2ME中setClip办法操纵详解
  • 在J2ME手机程序开辟中操纵颜色
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .