【问题标题】: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需要的类型。

标签: java java-me rms


【解决方案1】:

@jack 的评论是正确的。 writeUTF 接收一个字符串作为参数。如果getNumberPlate() 没有返回String,您必须更改您的代码。例如:

out.writeUTF(i.getNumberPlate().toString());

【讨论】:

    猜你喜欢
    • 2019-08-01
    • 2018-03-08
    • 2015-02-23
    • 1970-01-01
    • 1970-01-01
    • 2012-03-15
    • 2016-04-19
    • 1970-01-01
    相关资源
    最近更新 更多