如何在rms中创建多个列?
如姓名、职业等
我刚刚使用了RMS内置函数,比如addRecord。我没有找到任何方法来创建多个列,除了将所有列值连接在一个字符串中添加并将其传递到addRecord
创建一个类似csv
的String
,其中包含您想要的所有列数据:
String row = "nameData;occupationdata;";
然后调用这个方法:
public synchronized int addRecord(String record) {
// Convert the string record to an array of bytes
byte[] bytes = record.getBytes();
// Add the byte array to the record store
try {
return recordStore.addRecord(bytes, 0, bytes.length);
}
catch (RecordStoreException e) {
e.printStackTrace();
}
return -1;
}
所以你提前知道,第一部分是名字值,第二部分是职业值。
在Java ME中,RMS通常是非结构化的数据存储类型。因此RMS以平面文件的格式存储数据。这就是RMS无法在RMS中执行查询操作的原因。
现在,说到您的观点,要用多列存储数据,您可以通过以下两种方式来实现。
-
基于XML的
对于XMLBase,您需要为数据提供XML标记,例如在您的案例中,
<ROW><NAME>Lucifer</NAME><OCCUPATION>Student</OCCUPATION><AGE>21</AGE></ROW>
现在您可以将此XML存储在RMS中,并且在检索数据时,您需要对它进行解析,以便它将返回您的列基值。
-
在记录中使用某些分隔符(例如"|"管道符号)
对于另一个选项,您可以简单地在每个值后面添加"|"号,例如在你的情况下,
Lucifer|Student|21| Rajan|Student|20|
现在,在检索数据时,您需要解析这个"|"符号,并从一列中获取各种数据。