我写了这个ASN.1描述
Demo-module DEFINITIONS ::= -- Module-name DEFINITIONS ::= BEGIN
BEGIN
ClientFirstRequest ::= SEQUENCE {
clientInt INTEGER
}
ServerFirstResponse ::= SEQUENCE {
serverInt INTEGER ,
serverString IA5String
}
ClientSecondRequest ::= SEQUENCE {
clientString IA5String
}
ServerSecondResponse ::= SEQUENCE {
serverResponse IA5String
}
END -- end of module, END required我有一个发送整数到服务器的代码,它工作得很好
DataOutputStream dos = new DataOutputStream(_socket.getOutputStream());
dos.writeInt(4);但是我尝试使用ASN.1类,我遇到了一个问题,我尝试了下面的代码,但是我在setValue方法中有一个错误
ClientFirstRequest h = new ClientFirstRequest();
h.setValue(4);
BerOutputStream bos = new BerOutputStream(_socket.getOutputStream());
h.encode(bos);

发布于 2013-05-22 03:37:53
这看起来像是一个问题,您应该询问您正在使用的ASN.1工具的供应商。每个ASN.1工具都有自己的方式从值转换到编码的字节流,即使得到的字节流对于所有ASN.1工具都应该是相同的。您尚未指明正在使用的ASN.1工具。
https://stackoverflow.com/questions/16633430
复制相似问题