我编写了这段代码来获取带有ASN.1生成的类的Int和String。它适用于Integer,但我不明白如何将IA5String转换为String。
ServerFirstResponse response1 = new ServerFirstResponse();
ASN1Integer serverNumber= response1.serverInt;
int serverNumbervalue = (int)serverNumber.getValue();
IA5String serverString=response1.serverString;
String serverString = (String) serverString.getBytes();
这是ASN序列的描述
ServerFirstResponse ::= SEQUENCE {
serverInt INTEGER ,
serverString IA5String
}
答案 0 :(得分:3)
javadocs here不会列出getBytes
方法,而是列出getValue
方法。无论哪种方式,您都无法将byte[]
投射到String
。
您可以将bytes
传递给String
构造函数
new String(serverString.getBytes())
或
只需使用toString
作为serverString.toString()