我的接口系统提供了来自 Erlang 世界的结果,该结果发送一个 erlang 术语的字符串表示,例如元组列表:
[ {"key1" , ["AAA", "BBB"] } , {"key2" , ["CCC", "DDD"] } ]
在 Java 中收到此字符串后,我想使用 OTP 库(com.ericsson.otp.OtpErlangList 等)对其进行解析(反序列化)。
在我的情况下,我不想直接连接到 Erlang OTP 或使用 Json 或 Xml(如果可能,尝试尽可能地处理它)。
当我将字符串转换为 OtpErlangList 时,我得到一个整数列表,所以总的来说,我相信它只是转换为字符代码,因为 erlang 中的字符串是代码列表。JInterface 中似乎没有反序列化器。如果是这种情况,那么我不得不使用 JSON。
必须有一种方法,因为 OtpErlangObject (和所有其他子类)都有一个 toString 方法。为什么他们不提供扭转这种情况的能力( fromString(String str) )?
重申:如何将 erlang 术语字符串表示形式直接从字符串转换为 Java 中的 JInterface 对象(没有节点连接,与 JSON 接口等)。