我在将JsonElement转换为字符串时遇到了一些麻烦。我正在使用getAsString()方法调用,但我不断得到一个不受支持的操作异常。我检查了我打电话的输出,看起来是正确的。GSON JsonElement转换为字符串
这里是我的代码,对不起,我可怜的命名约定:
JsonParser jp2 = new JsonParser();
JsonObject root2 = jp2.parse(getAllEventsResults.get_Response()).getAsJsonObject();
JsonArray items2 = root2.get("items").getAsJsonArray();
for(int i=0; i<items2.size(); i++){
JsonObject item = items2.get(i).getAsJsonObject();
System.out.println(item.get("start").getAsString());}
这样做的最奇怪的是,我做同样的事情在上面这段代码:
JsonParser jp = new JsonParser();
JsonObject root = jp.parse(getAllCalendarsResults.get_Response()).getAsJsonObject();
JsonArray items = root.get("items").getAsJsonArray();
JsonObject firstItem = items.get(0).getAsJsonObject();
String firstCalId = firstItem.get("id").getAsString();
你确定你的JSONObject同时包含“开始”和“ID”,或只是“ID”作为第二个快照? – kiruwka
我得到日历的ID,然后用该ID获取日历数据。 “start”是我从日历中收到的事件,当我打印JsonElement时,它看起来像这样{“dateTime”:“2015-09-10T12:05:00-04:00”}。我只是不能把它转换成字符串... – tallaghi