我将JsonObject转换为JsonArray时遇到问题。我使用Ion和Gson库。
我想通过postmetod获取一些信息给sqlite。
[2015-11-08 22:11:58]: array (
0 =>
array (
'2014-01' =>
array (
'income' => '78294.34',
'expense' => '1000',
'result' => '77294.34',
),
'2014-02' =>
array (
'income' => '3245.34',
'expense' => '1000',
'result' => '2245.34',
),
'2014-03' =>
array (
'income' => '5637.1',
'expense' => '1000',
'result' => '4637.1',
),
'2014-04' =>
array (
'income' => '89345.55',
'expense' => '1000',
'result' => '88345.55',
),
'2014-11' =>
array (
'income' => '9348',
'expense' => '1000',
'result' => '8348',
),
'2014-12' =>
array (
'income' => '384836',
'expense' => '1000',
'result' => '383836',
),
),
1 =>
array (
2014 =>
array (
'income' => '570706.33',
'expense' => '6000',
'result' => '564706.33',
),
),
)
我正在尝试将日期,收入,费用和结果带到数据库。我没有设置double to database的问题。
//this normal work, show me string with "0"
System.out.println(jsonElements.get(0).toString());
//but i have problem when im using
jsonElements.get(0).getAsJsonArray().get(0).get(result).toString();
我不知道该怎么做。在logcat我有错误“这不是jsonarray”。我将非常感谢你的帮助。
答案 0 :(得分:0)
我找到了这样做的方法。我很抱歉做问题。我希望它会对某人有所帮助。
System.out.println(jsonElements.get(0).getAsJsonObject().entrySet().iterator().next().getKey());
System.out.println(jsonElements.get(0).getAsJsonObject().entrySet().iterator().next().getValue().getAsJsonObject().get("income").toString());
System.out.println(jsonElements.get(0).getAsJsonObject().entrySet().iterator().next().getValue().getAsJsonObject().get("expense").toString());
System.out.println(jsonElements.get(0).getAsJsonObject().entrySet().iterator().next().getValue().getAsJsonObject().get("result").toString());