我正在从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")
删除分数部分
我如何检索值?请帮忙。
答案 0 :(得分:12)
BigDecimal类有一个方法floatValue
。所以,如果你想要比String更漂浮,你也可以使用它。
BigDecimal.valueOf(jsonObject.getDouble("KEY_STRING")).floatValue();
答案 1 :(得分:5)
BigDecimal.valueOf(jsonData.getDouble("Amount")).toPlainString()
答案 2 :(得分:4)
答案 3 :(得分:2)
只需使用:
float value = Float.valueOf(jsonObject.getString("KEY_STRING"));
答案 4 :(得分:0)
如何从json获取类似1.5的float值 我从json获得的浮点数看起来像是:“ rating”:4.5,
和我在android studio中的代码,我通过写得到这个浮点值:
float ratingNumber = BigDecimal.valueOf(hit.getDouble(“ rating”))。floatValue();
对我来说很好