2016-04-24 30 views
-1

我从HTTP服务器获得了包含由逗号分隔的值的字符串的响应。我通过使用逗号作为分隔符在客户端分隔这些值。但我需要将其转换为整数才能在我的函数中使用它。我使用Integer.parseInt,但它不是转换。任何人都可以请帮忙。使用Integer.parseInt()将字符串数组转换为整型数组不可能

这是从获得的httpserver

HttpResponse response = client.execute(post); 
String responseStr = EntityUtils.toString(response.getEntity()); 
System.out.println("Response is " + responseStr); 
separated = responseStr.split(","); 
int[] numbers = new int[separated.length]; 
for(int i = 0;i < separated.length;i++) 
     numbers[i] = Integer.parseInt(separated[i]); 
System.out.println(separated[0] + "and " + separated[1] + "and " + separated[2]); 

其输出我收到响应是代码:

04-23 18:07:32.898:I /的System.out(31596):响应是1,1,15876.0

04-23 18:07:33.867:I /的System.out(31596):响应是1,0,15876.0

04-23 18:07:34.773:我/System.out(31596):回应是1,015876.0

04-23 18:07:35.765:I /的System.out(31596):响应是3,1,5929.0

04-23 18:07:36.820:I /的System.out(31596) :响应是3,1,5625.0

第二个sysout不工作。任何帮助都非常可观。

+2

15876.0不是一个整数。你收到一个NumberFormatException?如果是这样,你可以使用数字[i] =(int)Float.parseFloat(separate [i]);如果你期望整数,你会更好地理解为什么你要发送小数。 –

+0

谢谢。这确实奏效。如果你可以把它作为评论,我可以upvote。 – MJ123

回答

1

15876.0不是一个整数。你应该收到一个NumberFormatException。

You could use numbers[i] = (int)Float.parseFloat(separated[i]); 

如果你只是需要整数部分。

相关问题