最近在做项目中, 在客户端要创建一个RMS给服务端读取,服务端已经写好了。但因为不知道服务端是好何读取的, 而我又是一个新手,所以在网上找了许多关于读写RMS的方法。我们知道RMS的读写都是用byte[], 网上说的大部分都是用
ByteArrayOutputStream/DataOutputStream写数据,而用ByteArrayInputStream/DataInputStream 来读数据。其用法如下:
假设要把String strHello = "Hello, string!";写入RMS,写数据的代码:
ByteArrayOutputStream baos = new ByteArrayOutputStream();
DataOutputStream dos = new DataOutputStream(baos);
dos.writeUTF(strHello);
byte[] rec = baos.toByteArray();
.......//把rec写入rms
baos.close();
dos.close();
而读数据的代码:
......
ByteArrayInputStream bais = new ByteArrayInputStream(rec);
//rec是 从rms读取出来的byte[] 类型
DataInputStream dis = new DataInputStream(bais);
strHello = dis.readUTF();
bais.close();
dis.close();
当我用这个方法写数据入RMS,项目运行时却发现服务返回是" {Hello,string!"。一时间我不知是错在哪里(很奇怪的,在output
window里我想copy这个字符串时,是copy不了的,如果不copy ‘{’,就可以。)。
后来我看了服务器读数据时的代码才知道,服务器读数据时直接用rec.toString();返回数据的。所以我把读写数据直接用String类
的方法就可以了。
写数据的代码:
byte[] rec = strHello.getBytes();
.....
读数据:
.....
strHello = rec.toString();
所以在读写RMS时的方法要用同一类型,不然就会得到意想不到的结果...
分享到:
相关推荐
51单片机控制Nand_Flash读写的两种方法
两种方法实现C#读写文件,适合快速上手及运用
MySql通过存储过程读写Xml两种方式性能比较。使用ExtractValue。
E语言实现的内存读写功能,可以通过指针来读写,用3种方法实现
1.Linux下文件句柄方式,写二进制文件时一定要用O_BINARY 2.CFile,MFC封装的形式,不区分二进制或者文本文件方式读写 3.FILE,文件指针形式,写二进制文件时一定要用wb
实际nand timing分析理论上nand 读写速度
ini读写ini读写ini读写ini读写ini读写ini读写ini读写ini读写ini读写ini读写ini读写
操作系统试验之第四文件读写的三种方式比较
51单片机控制NandFlash读写的两种方法.pdf
[分享]两种强力读写内存的方法(可过某游戏代理商的保护).pdf
无痕驱动读写-破虚拟读写无痕驱动读写-破虚拟读写无痕驱动读写-破虚拟读写无痕驱动读写-破虚拟读写无痕驱动读写-破虚拟读写无痕驱动读写-破虚拟读写无痕驱动读写-破虚拟读写无痕驱动读写-破虚拟读写无痕驱动读写-破...
(5)、AOP根据Dao层的方法名来判断读写库的切换,超出判断规则的只能走默认库(写库) 2、sharding-jdbc (1)、实现多种模式的读写分离 (2)、支持事务 (3)、配置中心化 (4)、存储过程不能正常解析 ——...
S7-1200通过外部端子控制启停+MODBUS读写频率的具体方法
介绍了如何通过java来读写xml的方法,其中介绍了几种方法,如:DOM、SAX、JDOM、JAXB、dom4j.
c#读写INI文件方法 c#读写INI文件 c#读写INI配置文件的方法 c#读写INI配置文件方法 c#读写INI文件方法 c#读写INI文件 c#读写INI配置文件的方法 c#读写INI配置文件方法
Java的两种读写锁介绍
一种避免对flash分区频繁读写的方法 本资源摘要信息介绍了一种避免对flash分区频繁读写的方法,该方法可以极大地降低对nandflash擦除次数,从而延长nandflash使用寿命。 1. 背景技术 nandflash和内存ram是目前...
有时候需要在Linux kernel--大多是在需要调试的驱动程序--中读写文件数据。在kernel中操作文件没有标准库可用,需要利用kernel的一些函数,这些函数主要有:filp_open() filp_close(), vfs_read() vfs_write(),set_...
Kotlin二进制读写方法.Kotlin二进制读写方法.Kotlin二进制读写方法.Kotlin二进制读写方法.Kotlin二进制读写方法.
VC++ 读写Excel 直接通过ODBC读写Excel表格文件。下下来看看。