为啥我不能将UTF写入RMS?
Posted
技术标签:
【中文标题】为啥我不能将UTF写入RMS?【英文标题】:How come I can't writeUTF to RMS?为什么我不能将UTF写入RMS? 【发布时间】:2015-07-08 15:40:14 【问题描述】:我正在使用 J2ME 开发应用程序。 该项目是将整数和字符串数据存储到RMS中。
错误显示out.writeUTF(i.getNumberPlate());
不起作用。
那么有什么办法可以解决这个问题吗?编译器甚至无法编译项目。
public class CarparkReservationParser
public static byte[] parseObj(CarparkReservation i)
ByteArrayOutputStream baos = new ByteArrayOutputStream();
DataOutputStream out;
try
out = new DataOutputStream(baos);
// write into string
out.writeInt(i.getCarpark());
out.writeUTF(i.getNumberPlate());
out.writeUTF(i.getStudentID());
out.writeUTF(i.getName());
out.writeInt(i.getYear());
out.writeInt(i.getMonth());
// baos.toByteArray();
catch (IOException e)
// convert to byte array
return baos.toByteArray();
【问题讨论】:
如果您告诉我们编译器给出的错误可能会有所帮助。 看看getNumberPlate()
的返回类型——它可能不会返回String
,这是writeUTF
需要的类型。
【参考方案1】:
@jack 的评论是正确的。 writeUTF
接收一个字符串作为参数。如果getNumberPlate()
没有返回String
,您必须更改您的代码。例如:
out.writeUTF(i.getNumberPlate().toString());
【讨论】:
以上是关于为啥我不能将UTF写入RMS?的主要内容,如果未能解决你的问题,请参考以下文章