我如何可以格式化以下Erlang项:jInterface创建外部Erlang项
{ atom, "message" }
在jInterface到我可以在Erlang的外壳调用外部格式
erlang:binary_to_term(Binary)
例子: 请注意,因为元组将通过网络发送,我通过转换为byte []完成。
OtpErlangObject[] msg = new OtpErlangObject[2];
msg[0] = new OtpErlangAtom("atom");
msg[1] = new OtpErlangString("message");
OtpErlangTuple reply = new OtpErlangTuple(msg);
OtpOutputStream stream = new OtpOutputStream(reply);
stream.toByteArray() // byte[] which I send over net
由二郎接收二进制是:
B = <<104,2,100,0,4,97,116,111,109,107,0,7,109,101,115,115,97,103,101>>
然后,在一个Erlang壳接收到的术语转换为二进制给出badarg。
binary_to_term(B).
** exception error: bad argument
in function binary_to_term/1
called as binary_to_term(<<104,2,107,0,4,97,116,111,109,107,0,7,109,
101,115,115,97,103,101>>)
抱歉,但我真的不明白你的问题,你在这里问什么..你能更精确? – user601836 2013-03-04 14:02:26
为什么我的java jInterface代码不能创建完整的BERT术语? – BAR 2013-03-04 23:29:49
为什么二进制表示?你使用套接字还是使用连接到erlang的java节点? – user601836 2013-03-07 08:59:20