流与RMS接口的整合运用

原创 2008年09月28日 18:45:00
   J2ME开发中数据存储最基本也最常用的方式是RMS存储方式,RMS相关的API所操作的是直接操作对象是byte数组,所以一般在开发过程中我们必须利用封装的思想对应用程序所需存的数据的再封上一层,使其存储数据的接口更好的使用与维护。
   在封装的过程中利用流来处理存储的逻辑是最佳的作法,程序逻辑清晰,容易扩展。
对于存数据用到的是ByteArrayOutputStream,DataOutputStream.
对于取数据用到的是ByteArrayInputStream,DataInputStream.
容易的demo是看看wtk中的game工程.
比如:C:/WTK25/apps/Games/src/example/wormgame/WormScore.java

try {            try {                baos = new ByteArrayOutputStream();                das = new DataOutputStream(baos);                das.writeShort((short)newScore);                das.writeUTF(name);                data = baos.toByteArray();                das.close();            } catch (IOException ioe) {                throw new RecordStoreException();            }            if (myStore == null) {                openHighScores();                myStore.setRecord(level + 1, data, 0, data.length);                closeHighScores();            } else {                myStore.setRecord(level + 1, data, 0, data.length);            }        } catch (RecordStoreException rse) {            /* Silently fail; exception to save high score is non-critical */        }
存数据的demo
/* Read high score store */                ByteArrayInputStream bais;                DataInputStream dis;                byte[] data;                for (int i = 0; i < WormPit.MAX_LEVELS; i++) {                    data = myStore.getRecord(i + 1);                    if (data != null) {                        try {                            bais = new ByteArrayInputStream(data);                            dis = new DataInputStream(bais);                            highScore[i] = dis.readShort();                            highScoreName[i] = dis.readUTF();                            dis.close();                        } catch (IOException ioe) {                        }                    }                }
取数据的demo

上面两个程序段是最普通的写法,没有进一步的封装
(ps:存与取是两个相反的过程,写与读的顺序要统一)

版权声明:本文为博主原创文章,未经博主允许不得转载。

Matlab rms与std的区别

erro = [1 -1 0 0]; std(erro) = 0.8165 = sqrt(2/3) rms(erro) = 0.7071 = sqrt(2/4) 此处n等于4主要在于是除...
  • xiaoxiao133
  • xiaoxiao133
  • 2016年12月08日 15:30
  • 2840

如何搭建RMS并和SharePoint关联使用?

很多企业为了更好的保护和管理存储在SharePoint中的重要文档,比如各种财务数据、个人信息等文件时,不仅考虑在SharePoint中设置的权限会很严格,同时也会考虑能够和SharePoint结合使...
  • WarmSunshine7
  • WarmSunshine7
  • 2016年03月31日 16:19
  • 1667

Java中的抽象类与接口的简单介绍举例

Java中的抽象类与接口的简单介绍举例定义 抽象类(abstract class): 如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。 接口(Interface): 在JA...
  • Funffff
  • Funffff
  • 2017年07月29日 16:21
  • 191

[转译] AD RMS 安装最佳实践

在安装活动目录权限管理服务(ADRMS)时,请牢记以下几点: 将 AD RMS 服务单独安装在一台服务器上——将 AD RMS 与域控制器、微软邮件服务器(Microsoft Exchange Ser...
  • MSSecurity
  • MSSecurity
  • 2013年08月06日 13:53
  • 4735

RMS概念解析与使用指南

RMS(Record Management System)是MIDP中一个非常重要的子系统,因为它是J2ME应用程序进行持久性存储的唯一途径。当然你的系统如果支持JSR75的话,那么你可以使用File...
  • c30gcrk
  • c30gcrk
  • 2007年08月30日 17:51
  • 413

微软文档权限管理(RMS)方案分析

转自:http://youmiss.blog.163.com/blog/static/218865920061190306660/
  • shamy
  • shamy
  • 2014年10月13日 09:42
  • 2517

RMS配置

AD RMS服务器部署RMS安装 2012-03-24 本文行家:老马小百科 微软的RMS(RightsManagementServices版权管理服务)服务器可以保护企业内的重...
  • GDSongrenjun
  • GDSongrenjun
  • 2012年06月28日 15:10
  • 1258

调用Office对象使用rms加密

微软提供的rms服务可以对文档进行加密和授权,经过加密和授权的文档,只有指定的用户才可以查看和执行相应的操作,这对于那些想保护自己信息的企业来说无疑非常有用。我们公司打算用它来对技术管理部的文档借阅系...
  • perky_zhou
  • perky_zhou
  • 2005年10月01日 08:21
  • 2967

非域用户使用RMS需要设置服务器地址

客户端如果没有加入域,若使用RMS来进行权限服务的话,工作组模式下的用户只有15分钟的信任时间,但这需要通过修改注册表来实现,因为你需要获取SCP对象: 客户端需要修改以下两个注册表键值 ...
  • rheostat
  • rheostat
  • 2012年08月31日 14:22
  • 2209

[技术分享] 外部客户端不能够访问 RMS 服务

对于一些非域环境的客户端,我们知道,可以通过添加注册表来解决 RMS 服务发现的问题,具体可以见:如何让在非域环境下的Office 客户端也能访问 RMS 服务 有的时候您会发现即使加了注册表,也未必...
  • MSSecurity
  • MSSecurity
  • 2011年09月30日 18:18
  • 2867
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:流与RMS接口的整合运用
举报原因:
原因补充:

(最多只允许输入30个字)