Heim >Java >javaLernprogramm >Warum schlägt meine String-zu-JSONArray-Konvertierung in Android fehl und wie kann ich das Problem beheben?

Warum schlägt meine String-zu-JSONArray-Konvertierung in Android fehl und wie kann ich das Problem beheben?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-26 11:27:10813Durchsuche

Why Does My String-to-JSONArray Conversion Fail in Android, and How Can I Fix It?

Problem beim Konvertieren eines Strings in ein JSON-Array

Bei dem Versuch, einen JSON-String von einem Webdienst in ein JSON-Array zu analysieren, ein Android Der Entwickler ist auf eine Typkonfliktausnahme gestoßen. Die bereitgestellte JSON-Zeichenfolge ist gültig und der folgende Code wurde verwendet:

JSONArray jsonArray = new JSONArray(readlocationFeed);

Auflösung

Das Problem liegt in der Art des JSON-Objekts, das erstellt wird. Der empfangene JSON ist eigentlich ein JSON-Objekt, kein Array. Um das Problem zu beheben, sollte der Code wie folgt geändert werden:

JSONObject jsonObject = new JSONObject(readlocationFeed);

JSONArray jsonArray = jsonObject.getJSONArray("locations");

Dadurch wird ein JSONObject aus der JSON-Zeichenfolge erstellt und dann das Array „locations“ daraus abgerufen. Das Array kann dann iteriert werden, um auf die einzelnen Standortobjekte zuzugreifen. Hier ist der überarbeitete Code:

JSONObject jsonObject = new JSONObject(readlocationFeed);

JSONArray jsonArray = jsonObject.getJSONArray("locations");
for (int i = 0; i < jsonArray.length(); i++) {
    JSONObject locationObject = jsonArray.getJSONObject(i);
}

Das obige ist der detaillierte Inhalt vonWarum schlägt meine String-zu-JSONArray-Konvertierung in Android fehl und wie kann ich das Problem beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn