2012-08-28 2 views
0

JSON 응답을 서버에서 파싱하려고하는데 오류 메시지가 표시됩니다. JSONArray를 JSONObject로 변환 할 수 없습니다.Android JSON : JSONArray를 JSONObject로 변환 할 수 없습니다.

08-28 18:56:08.083: W/System.err(1037): org.json.JSONException: Value [{"content":"<p class=\"bodytext\">erhalten Sie einen Überblick über die Aktivitäten der SKBF im Jahr 2011 im aktuellen Jahresbericht.<br \/><br \/><a href=\"de\/portraet\/auftrag\/#c113\" class=\"internal-link\" >SKBF Jahresbericht 2011<\/a><\/p>","pubDate":"01.06.12","category":"Allgemeine News","title":"SKBF Jahresbericht 2011","description":"Wenn Sie wissen wollen, was die SKBF macht","link":"http:\/\/www.skbf-csre.ch\/de\/news\/news-detail\/?tx_ttnews%5BbackPid%5D=2&tx_ttnews%5Btt_news%5D=80&cHash=1274043c236945bf6e592329e6742ebf"}] at 0 of type org.json.JSONArray cannot be converted to JSONObject 
08-28 18:56:08.083: W/System.err(1037):  at org.json.JSON.typeMismatch(JSON.java:96) 
08-28 18:56:08.083: W/System.err(1037):  at org.json.JSONArray.getJSONObject(JSONArray.java:484) 
08-28 18:56:08.093: W/System.err(1037):  at com.example.skbf_csre.SKBFActivity.onCreate(SKBFActivity.java:55) 
08-28 18:56:08.093: W/System.err(1037):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1072) 
08-28 18:56:08.093: W/System.err(1037):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1836) 
08-28 18:56:08.103: W/System.err(1037):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1893) 
08-28 18:56:08.103: W/System.err(1037):  at android.app.ActivityThread.access$1500(ActivityThread.java:135) 
08-28 18:56:08.103: W/System.err(1037):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1054) 
08-28 18:56:08.103: W/System.err(1037):  at android.os.Handler.dispatchMessage(Handler.java:99) 
08-28 18:56:08.113: W/System.err(1037):  at android.os.Looper.loop(Looper.java:150) 
08-28 18:56:08.113: W/System.err(1037):  at android.app.ActivityThread.main(ActivityThread.java:4389) 
08-28 18:56:08.113: W/System.err(1037):  at java.lang.reflect.Method.invokeNative(Native Method) 
08-28 18:56:08.113: W/System.err(1037):  at java.lang.reflect.Method.invoke(Method.java:507) 
08-28 18:56:08.123: W/System.err(1037):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:849) 
08-28 18:56:08.123: W/System.err(1037):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:607) 
08-28 18:56:08.123: W/System.err(1037):  at dalvik.system.NativeStart.main(Native Method) 

내가 뭘 amtrying 것은 :

for (int i = 0; i < jsonArray.length(); i++) { 
     JSONObject jsonObject = jsonArray.getJSONObject(i); 
     System.out.println(jsonObject.getString("title")); 
} 

는 당신의 도움을 주셔서 감사합니다 여기에

는 로그 캣입니다.

+0

원본 JSON이란 무엇입니까? –

+0

샘플 JSON 문서를 테스트 케이스로 게시하십시오. 감사. – RajV

+0

답변 해 주셔서 감사합니다. JSON은 다음에서 찾을 수 있습니다. http://www.skbf-csre.ch/apps/iphone/rss/?displayFormat=JSON&language=german&function=newsList –

답변

6

데이터를 충분히 파고 들지 않는 것처럼 보입니다. 가지고있는 것은 객체가 들어있는 여러 배열을 포함하는 배열입니다. 사용해보기 :

for (int i = 0; i < jsonArray.length(); i++) { 
     JSONArray innerJsonArray = jsonArray.getJSONArray(i); 
     JSONObject jsonObject = innerJsonArray.getJSONObject(0); 
     System.out.println(jsonObject.getString("title")); 
} 
+0

감사합니다. –

관련 문제