[
{
"ID": 1,
"EventDate": "2014-10-10T00:00:00",
"EventName": "Geburtstagsparty Michael",
"EventDescription": "19.Geburtstag",
"ExchangeMoney": 345.5,
"Rent": null,
"CleanMoney": null,
"Earmarked": false,
"ResponsibleMember": {
"ID": "d3fbc332-99ab-49c8-8374-4ef192db78e4",
"Firstname": null,
"Lastname": "Aigner",
"Birthday": "0001-01-01T00:00:00",
"Telephonenumber": null,
"Street": null,
"PostalCode": null,
"City": null,
"Username": null,
"Password": null,
"eMail": null
},
"EventType": "Geburtstagsparty"
},
{
"ID": 2,
"EventDate": "2014-12-31T00:00:00",
"EventName": "Silvesterparty",
"EventDescription": "Happy new Year!",
"ExchangeMoney": 551.2,
"Rent": null,
"CleanMoney": null,
"Earmarked": false,
"ResponsibleMember": {
"ID": "d3fbc332-99ab-49c8-8374-4ef192db78e4",
"Firstname": null,
"Lastname": "Aigner",
"Birthday": "0001-01-01T00:00:00",
"Telephonenumber": null,
"Street": null,
"PostalCode": null,
"City": null,
"Username": null,
"Password": null,
"eMail": null
},
"EventType": "Feiertags-Feier"
}
]
我logcat的說:JSONException但有效的JSON字符串
12-18 23:58:02.132 14399-14399/aignerkatzlberger.htlgrieskirchen.at.jugendraumapp W/System.err﹕ org.json.JSONException: Value [{"ID":1,"EventDate":"2014-10-10T00:00:00","EventName":"Geburtstagsparty Michael","EventDescription":"19.Geburtstag","ExchangeMoney":345.5000,"Rent":null,"CleanMoney":null,"Earmarked":false,"ResponsibleMember":{"ID":"d3fbc332-99ab-49c8-8374-4ef192db78e4","Firstname":null,"Lastname":"Aigner","Birthday":"0001-01-01T00:00:00","Telephonenumber":null,"Street":null,"PostalCode":null,"City":null,"Username":null,"Password":null,"eMail":null},"EventType":"Geburtstagsparty"},{"ID":2,"EventDate":"2014-12-31T00:00:00","EventName":"Silvesterparty","EventDescription":"Happy new Year!","ExchangeMoney":551.2000,"Rent":null,"CleanMoney":null,"Earmarked":false,"ResponsibleMember":{"ID":"d3fbc332-99ab-49c8-8374-4ef192db78e4","Firstname":null,"Lastname":"Aigner","Birthday":"0001-01-01T00:00:00","Telephonenumber":null,"Street":null,"PostalCode":null,"City":null,"Username":null,"Password":null,"eMail":null},"EventType":"Feiertags-Feier"}] of type java.lang.String cannot be converted to JSONArray
12-18 23:58:02.132 14399-14399/aignerkatzlberger.htlgrieskirchen.at.jugendraumapp W/System.err﹕ at org.json.JSON.typeMismatch(JSON.java:111)
12-18 23:58:02.132 14399-14399/aignerkatzlberger.htlgrieskirchen.at.jugendraumapp W/System.err﹕ at org.json.JSONArray.<init>(JSONArray.java:96)
12-18 23:58:02.132 14399-14399/aignerkatzlberger.htlgrieskirchen.at.jugendraumapp W/System.err﹕ at org.json.JSONArray.<init>(JSONArray.java:108)
12-18 23:58:02.132 14399-14399/aignerkatzlberger.htlgrieskirchen.at.jugendraumapp W/System.err﹕ at aignerkatzlberger.htlgrieskirchen.at.jugendraumapp.database.DataRepository.insertEvents(DataRepository.java:58)
12-18 23:58:02.132 14399-14399/aignerkatzlberger.htlgrieskirchen.at.jugendraumapp W/System.err﹕ at aignerkatzlberger.htlgrieskirchen.at.jugendraumapp.database.DataRepository.access$000(DataRepository.java:32)
12-18 23:58:02.132 14399-14399/aignerkatzlberger.htlgrieskirchen.at.jugendraumapp W/System.err﹕ at aignerkatzlberger.htlgrieskirchen.at.jugendraumapp.database.DataRepository$RequestTask.onPostExecute(DataRepository.java:134)
12-18 23:58:02.132 14399-14399/aignerkatzlberger.htlgrieskirchen.at.jugendraumapp W/System.err﹕ at aignerkatzlberger.htlgrieskirchen.at.jugendraumapp.database.DataRepository$RequestTask.onPostExecute(DataRepository.java:91)
12-18 23:58:02.132 14399-14399/aignerkatzlberger.htlgrieskirchen.at.jugendraumapp W/System.err﹕ at android.os.AsyncTask.finish(AsyncTask.java:632)
12-18 23:58:02.142 14399-14399/aignerkatzlberger.htlgrieskirchen.at.jugendraumapp W/System.err﹕ at android.os.AsyncTask.access$600(AsyncTask.java:177)
12-18 23:58:02.142 14399-14399/aignerkatzlberger.htlgrieskirchen.at.jugendraumapp W/System.err﹕ at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:645)
12-18 23:58:02.142 14399-14399/aignerkatzlberger.htlgrieskirchen.at.jugendraumapp W/System.err﹕ at android.os.Handler.dispatchMessage(Handler.java:102)
12-18 23:58:02.142 14399-14399/aignerkatzlberger.htlgrieskirchen.at.jugendraumapp W/System.err﹕ at android.os.Looper.loop(Looper.java:136)
12-18 23:58:02.142 14399-14399/aignerkatzlberger.htlgrieskirchen.at.jugendraumapp W/System.err﹕ at android.app.ActivityThread.main(ActivityThread.java:5146)
12-18 23:58:02.142 14399-14399/aignerkatzlberger.htlgrieskirchen.at.jugendraumapp W/System.err﹕ at java.lang.reflect.Method.invokeNative(Native Method)
12-18 23:58:02.142 14399-14399/aignerkatzlberger.htlgrieskirchen.at.jugendraumapp W/System.err﹕ at java.lang.reflect.Method.invoke(Method.java:515)
12-18 23:58:02.142 14399-14399/aignerkatzlberger.htlgrieskirchen.at.jugendraumapp W/System.err﹕ at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:796)
12-18 23:58:02.142 14399-14399/aignerkatzlberger.htlgrieskirchen.at.jugendraumapp W/System.err﹕ at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:612)
12-18 23:58:02.142 14399-14399/aignerkatzlberger.htlgrieskirchen.at.jugendraumapp W/System.err﹕ at dalvik.system.NativeStart.main(Native Method)
正如你可以在圖片中看到,我得到一個JSONException
如果我想JSON字符串轉換爲JSONArray
。我不明白,因爲幾個在線測試說我的JSON是有效的。
此外,我必須使用JSONArray
作爲根元素,因爲在根級別有「[」括號。
那麼我做錯了什麼?
private void insertEvents(String result)
{
if(result.equals("-1"))
{
handleError();
}
else
{
try
{
// make JSON object
JSONArray jArr = new JSONArray(result);
}
catch (Exception e)
{
// TODO: handle
}
}
}
您確定這是您嘗試解析的整個JSON字符串嗎?因爲它似乎沒有任何可能導致此類異常的問題。 – rekaszeru 2014-12-18 23:52:14