我的服务器使用 ASN.1 生成的类接收一个 Integer
BerInputStream in = new BerInputStream(socket.getInputStream());
h.decode(in);
ASN1Integer ClientNumber= h.clientInt;
System.out.println(ClientNumber);
h.clientInt 返回一个 ASN.1Integer。 如果客户端发送 4,则输出为
BerInteger([Universal 2])=4
如何将此 ASN.1Integer 转换为 Integer
最佳答案
ASN1Integer
扩展了 BerInteger
。 BerInteger有一个 getValue
方法,它返回一个 long
值。如果需要,可以将其转换为整数:
ASN1Integer clientNumber = h.clientInt;
int value = (int)clientNumber.getValue();
(尽管最好使用 long 来实现完全精度)
关于java - ASN.1整数转普通整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16653331/