すでに多くのタイプのソリューションを検索しましたが、それを変更してエラーを解決する方法はまだわかりません。私はアンドロイドで非常に新しいので、私は誰かの助けが必要です。ここでJSONObjectをJSONArrayに変換できません4
org.json.JSONException: Value {"user_info":[{"MemberID":"1","Name":"Joshua","Url":"[email protected]"},{"MemberID":"2","Name":"Mary","Url":"[email protected]"}]} of type org.json.JSONObject cannot be converted to JSONArray
私の変数とJSON-ファイルを解析するコードです:
パブリッククラスMainActivityアクティビティ{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder()
.permitAll().build();
StrictMode.setThreadPolicy(policy);
TextView id = (TextView) findViewById(R.id.id);
TextView name = (TextView) findViewById(R.id.name);
TextView url = (TextView) findViewById(R.id.url);
JSONObject json = null;
String str = "";
HttpResponse response;
HttpClient myClient = new DefaultHttpClient();
HttpPost user_info = new HttpPost("http://192.168.1.103/ViewList/getJSON.php");
try {
response = myClient.execute(user_info);
str = EntityUtils.toString(response.getEntity(), "UTF-8");
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
try{
JSONArray jArray = new JSONArray(str);
json = jArray.getJSONObject(0);
id.setText(json.getString("MemberID"));
name.setText(json.getString("Name"));
url.setText(json.getString("Url"));
} catch (JSONException e) {
e.printStackTrace();
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
あなたの提案に感謝し、最後に私に働いています。 – Ziha
優れています。これがあなたを助けてくれてうれしいです。ハッピーコーディング。 – ishmaelMakitla