Я тяну свои волосы от этого. Я все еще не совсем понимаю, как работает JSON. Я пытаюсь вернуть число (отформатированное как строка) из скрипта PHP в java. Я получаю следующее сообщение об ошибке:Как разобрать этот PHP на Java с помощью JSON?
Error parsing data org.json.JSONException: Value http of type java.lang.String cannot be converted to JSONArray
Это фрагмент из кода PHP:
class result
{
public $value = "";
}
$result = new result();
$result->value = "1";
print(json_encode($result));
Это возвращает: { "значение": "1"}
Я пытаюсь для хранения «1» в строке для проверки ошибок на стороне Android.
Сначала он вставляется в базу данных MySQL, и это работает, но оно не вернет значение правильно.
Вот кода Java, которые я пытался использовать:
try
{
CustomHttpClient.executeHttpPost(response="http://test.com/test.php",postParameters);
String result = response.toString();
try
{
returnString = "";
JSONArray jArray = new JSONArray(result);
for(int i=0;i<jArray.length();i++)
{
JSONObject json_data = jArray.getJSONObject(i);
Log.i("log_tag","value:"+json_data.getString("value"));
returnString = json_data.getString("value");
}
}
catch(JSONException e)
{
Log.e("log_tag", "Error parsing data "+e.toString());
Toast.makeText(getApplicationContext(), "Error Parsing", Toast.LENGTH_LONG).show();
}
}
хорошо вы имеете в виду вы хотите передать JSON с помощью PHP для Java? –
Вы пытаетесь прочитать массив, но это единственный объект. – eduyayo