gpt4 book ai didi

java - 数字格式异常 :Invalid lng

转载 作者:行者123 更新时间:2023-12-01 18:46:21 27 4
gpt4 key购买 nike

大家好,我目前正在 android 中使用 DH key 交换开发客户端服务器应用程序。我在客户端将字符串转换为 long 时遇到问题,奇怪的是该转换适用于前 2 个变量 pValue 和 gValue。但是,当我想在从服务器发送过来的服务器公钥时对其进行转换。我收到数字格式异常:无效长。我很确定发送过来的数字是数字,而不是字母表,因为我将它们打印在字符串中。服务器一起发送 gValue:pValue:PK,并用 :

分隔

下面是我的客户端代码 fragment 。

try {

response = SimpleHttpClient.executeHttpGet("http://10.0.2.2:8000/MyServletProject/DHServlet");
String res = response.toString();

String [] ar = res.split(":");
String primeValue = ar[0];
String genValue = ar[1];
String pkSValue = ar[2];
System.out.println(pkSValue);
long convertPValue = Long.parseLong(primeValue);
long convertGValue = Long.parseLong(genValue);
long convertSValue = Long.parseLong(pkSValue);
//BigInteger biPK;
// biPK = new BigInteger(pkSValue);
//System.out.println(convertPKValue);
long skB=getDH.generateSKB();

BigInteger bi1,bi2,bi3,sKey,biSK;

bi1=BigInteger.valueOf(convertGValue);
bi2=BigInteger.valueOf(convertPValue);
bi3=getDH.generatePkB(bi1, bi2, skB);
biSK = BigInteger.valueOf(skB);
//biPK= new BigInteger(pkSValue);
String PKClient = bi3.toString();
System.out.println("The public key is "+PKClient);
System.out.println("The generator value is "+bi1);
System.out.println("The prime value is "+bi2);

日志猫

07-12 12:24:33.459: I/System.out(2387): 4126158 
07-12 12:24:33.459: W/System.err(2387): java.lang.NumberFormatException: Invalid long: "4126158
07-12 12:24:33.479: W/System.err(2387): "
07-12 12:24:33.489: W/System.err(2387): at java.lang.Long.invalidLong(Long.java:125)
07-12 12:24:33.499: W/System.err(2387): at java.lang.Long.parse(Long.java:362)
07-12 12:24:33.499: W/System.err(2387): at java.lang.Long.parseLong(Long.java:353)
07-12 12:24:33.529: W/System.err(2387): at java.lang.Long.parseLong(Long.java:319)
07-12 12:24:33.529: W/System.err(2387): at com.example.firstapp.clientside.LoginLayout$1$1.run(LoginLayout.java:70)
07-12 12:24:33.549: W/System.err(2387): at java.lang.Thread.run(Thread.java:856)
07-12 12:25:55.460: W/IInputConnectionWrapper(2387): showStatusIcon on inactive InputConnection
07-12 12:28:54.453: I/System.out(2437): java.lang.NumberFormatException: Invalid long: "2810970

我真的很困惑这个问题,希望大家能帮帮我。提前致谢!

最佳答案

从这一行

07-12 12:24:33.459: I/System.out(2387): 4126158 

4126158 末尾似乎有一个空格。

您可以使用 java.lang.String.trim() 来修剪字符串,然后再尝试将其解析为 Long

关于java - 数字格式异常 :Invalid lng,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17615157/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com