【发布时间】:2014-11-13 10:44:23
【问题描述】:
我正在从 jsondata 中检索值
HttpClient client = new DefaultHttpClient();
HttpConnectionParams.setConnectionTimeout(client.getParams(), 10000);
HttpResponse response;
HttpGet gett = new HttpGet(URL);
response = client.execute(get);
BufferedReader reader = new BufferedReader(new putStreamReader(response.getEntity().getContent(), "UTF-8"));
orignalResponse = reader.readLine();
JSONTokener tokener = new JSONTokener(orignalResponse);
JSONObject jsonData = new JSONObject(tokener);
Log.v("AMOUNT", "amount :"+jsonData.get("Amount"));
我想检索原来是“23868352383.00”的“金额”
但是当我使用
jsonData.get("Amount"),它的值为“2.3868352383E10”,
使用jsonData.getDouble("Amount"),它给出的值为“2.3868352383E10”
使用jsonData.getLong("Amount") 删除分数部分
如何检索值?请帮忙。
【问题讨论】:
-
我建议您仅像 String 一样获取它,然后将其转换为您想要的任何内容。但只需从 Json 作为字符串获取。
-
json 总是给 Sting 我们可以将 String 解析为 Float
-
我已经尝试过了,但是作为字符串它也给出了“2.3868352383E10”的值,还有其他方法吗?
-
@RajeshSuthar 不,不可能,如果您在 JSon 中的值为“23868352383.00”,那么它必须返回相同的字符串。
-
@pratt :它是这样的“2.3868352383E10”
标签: android json web-services double