您好我正在使用android.I創建了一個應用程序,它使用json從數據庫獲取值。我在xamp本地主機上成功測試了我的應用程序。但是當我試圖連接到我的服務器,它不能正常工作,並顯示錯誤「04-01 14:48:48.308:E/log_tag(695):解析數據時出錯org.json.JSONException:類型java.lang.String的值不能被轉換成JSONArray 「 我不能找出錯誤,請幫助我,提前Android JSON顯示字符串不能轉換爲JSON數組錯誤
這裏感謝是我的代碼
try{
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("server link");
HttpResponse response1 = httpclient.execute(httppost);
HttpEntity entity = response1.getEntity();
is = entity.getContent();
Log.e("log_tag", "connection success ");
}
catch(Exception e)
{
Log.e("log_tag", "Error in http connection "+e.toString());
}
try
{
BufferedReader reader = new BufferedReader(new InputStreamReader(is,"iso-8859-1"),8);
StringBuilder sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null)
{
sb.append(line + "\n");
Log.w("Lengh","in buffered reader while");
}
is.close();
result2=sb.toString();
}
catch(Exception e)
{
Log.e("log_tag", "Error converting result "+e.toString());
}
try
{
JSONArray jArray = new JSONArray(result2);
for(int i=0;i<jArray.length();i++){
JSONObject json_data = jArray.getJSONObject(i);
App_id=json_data.getString("app_id");
String key=getIntent().getStringExtra("key");
if (getIntent().hasExtra("key")) {
if(key.compareTo(App_id)==0)
{
flag=1;
break;
//setContentView(R.layout.home);
}
} else {
finish();
}
'java.lang.String類型的值不能轉換爲JSONArray'你得到的是一個String而不是JSONArray。檢查你的迴應 – Raghunandan
我從服務器數據庫中得到字符串 – Bennett
@Bennett你可以發佈該回復。 – Hariharan