String jsonStr = {"UserId":1,"UserName":"張三","Key":12345678910} Gson gson=new Gson(); Map<String, Object> resultMap = gson.fromJson(jsonStr, new TypeToken<Map<String, Object>>(){}.getType() );轉換后 UserId=1.0,Key=1.2345678910這個要腫么辦,急!?。。。。≡诰€等貌似long型數據默認還轉換成16進制了解析前的key:1362312484950解析后的key=1.36231248495E12這是可以直接運行的代碼,各位大俠copy到機器上運行一下,看看是不是介個情況,給個回復,謝謝!String jsonStr = "{\"UserId\":1,\"UserName\":\"張三\",\"Key\":12345678910}"; Gson gson = new Gson();Map<String, Object> resultMap = gson.fromJson(jsonStr, new TypeToken<Map<String, Object>>(){}.getType() );for (Iterator<String> it = resultMap.keySet().iterator(); it.hasNext();) {String key = it.next();System.out.println(key+":"+resultMap.get(key));}
2 回答

慕絲7291255
TA貢獻1859條經驗 獲得超6個贊
直接定義一個你的這個用戶信息的類吧,不要用Object來描述數據類型
比如:
class User{
private long userId;
private String username;
private long key;
......getters & setters
}
然后用gson.fromJson(jsonStr,User.class)就可以得到user對象了。很方便
添加回答
舉報
0/150
提交
取消