Java 在edittext中显示时获取nullpointerexception

Java 在edittext中显示时获取nullpointerexception,java,android,json,parsing,nullpointerexception,Java,Android,Json,Parsing,Nullpointerexception,在Android中,当我解析json数据时,我得到了对象,可以在logcat中看到。但是当我转换为JSONArray,然后转换为getString()时,它会给出NULLPOINTEREXCEPTION。 我想在我的edittext中显示此json请帮助 谁能帮我一下吗 这是我的json结果表单php {"result":[{"uid":"1","name":"vipul","phone":"9772950005","sap":"500023675"}],"success":1} 注意:我得到

在Android中,当我解析json数据时,我得到了对象,可以在logcat中看到。但是当我转换为JSONArray,然后转换为getString()时,它会给出NULLPOINTEREXCEPTION。 我想在我的edittext中显示此json请帮助 谁能帮我一下吗

这是我的json结果表单php

{"result":[{"uid":"1","name":"vipul","phone":"9772950005","sap":"500023675"}],"success":1}
注意:我得到的是json,问题在于如何获得并显示该元素

这是我的json,可以在logcat中看到

10-19 02:13:51.082: W/Trace(1267): Unexpected value from nativeGetEnabledTags: 0
10-19 02:13:51.152: D/This is json error(1267): {"success":1,"result":[{"uid":"1","sap":"500023675","phone":"9772950005","name":"vipul"}]}
我的java代码是:

      public class search_view extends Activity{    
private ProgressDialog pDialog;
JSONObject result;
private static final String KEY_SUCCESS = "success";
private static final String KEY_NAME = "name";
private static final String KEY_PHONE = "phone";
private static final String TAG_RESULT = "result";
private static final String TAG_UID = "uid";
private static final String TAG_SAP = "sap";
public String sap="500023675";
EditText txtName,txtsap,txtPhone,txtuid;

      JSONParser jsonParser = new JSONParser();
      private static final String KEY_SEARCH_URL = "http://10.0.2.2:8080/android/search.php";

@Override
public void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.list_item);
        txtsap = (EditText) findViewById(R.id.sap);
        txtsap.setText("This is onCreate");
        new searchall().execute();
}

class searchall extends AsyncTask<String, String, JSONObject>{
    JSONObject json;
    @Override
    protected void onPreExecute() {
        super.onPreExecute();
        pDialog = new ProgressDialog(search_view.this);
        pDialog.setMessage("Searching... be patient..");
        pDialog.setIndeterminate(false);
        pDialog.setCancelable(true);
        pDialog.show();


    }


    @Override
    protected void onPostExecute(JSONObject result) {
        JSONArray resu;
        String id = "hello this is null";
        // TODO Auto-generated method stub
        //super.onPostExecute(result);
        try {
            resu=result.getJSONArray(TAG_RESULT);
        } catch (JSONException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
            resu = null;
        }   

        for( int i = 0;i <= resu.length(); i++){try {
            id = resu.getString(i);
        } catch (JSONException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }}

                txtuid =(EditText)findViewById(R.id.uid);
                txtName = (EditText)findViewById(R.id.name);
                txtPhone = (EditText) findViewById(R.id.phone);
                txtsap = (EditText) findViewById(R.id.sap);
                txtuid.setText(id);
                txtName.setText(id);
                txtPhone.setText("phone");
                txtsap.setText("this is yes");





        pDialog.dismiss();
    }
    @Override
    protected JSONObject doInBackground(String... arg0) {
                // TODO Auto-generated method stub
                int success;                    
                    List<NameValuePair> lis = new ArrayList<NameValuePair>();
                    lis.add(new BasicNameValuePair("sap", sap));
                    JSONObject json = jsonParser.makeHttpRequest(KEY_SEARCH_URL, "GET", lis);
                    Log.d("This is json error", json.toString());
                    try {
                        success = json.getInt(KEY_SUCCESS);

                    } catch (JSONException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
                    JSONObject res = null;
                    try {
                        res = json.getJSONObject(TAG_RESULT);
                    } catch (JSONException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
                    //obj = (JSONObject) res.get(j);
                return res;



}
}
}
谢谢


请帮助……

for(int i=0;i@lealand)我尝试替换第73行上的内容,然后?我们只能猜测而不知道引发空指针异常的行上的内容。此外,如果
resu.getString(i)
返回
null
,则所有
(R.id.*)
行将失败。只需首先检查以确保
id!=null
。@lealand这是在第73行resu=result.getJSONArray(TAG\u result);那么这意味着
result
为空。我看到您还有一个实例变量
result
。您打算处理哪一个?因为现在,它是在
onPostExecute(JSONObject result)
中传递的变量。对实例变量进行阴影处理不是一个好主意。
    10-19 02:13:54.232: E/AndroidRuntime(1267): FATAL EXCEPTION: main
10-19 02:13:54.232: E/AndroidRuntime(1267): java.lang.NullPointerException
10-19 02:13:54.232: E/AndroidRuntime(1267):     at com.god.upesgetall.search_view$searchall.onPostExecute(search_view.java:73)
10-19 02:13:54.232: E/AndroidRuntime(1267):     at com.god.upesgetall.search_view$searchall.onPostExecute(search_view.java:1)
10-19 02:13:54.232: E/AndroidRuntime(1267):     at android.os.AsyncTask.finish(AsyncTask.java:631)
10-19 02:13:54.232: E/AndroidRuntime(1267):     at android.os.AsyncTask.access$600(AsyncTask.java:177)
10-19 02:13:54.232: E/AndroidRuntime(1267):     at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:644)
10-19 02:13:54.232: E/AndroidRuntime(1267):     at android.os.Handler.dispatchMessage(Handler.java:99)
10-19 02:13:54.232: E/AndroidRuntime(1267):     at android.os.Looper.loop(Looper.java:137)
10-19 02:13:54.232: E/AndroidRuntime(1267):     at android.app.ActivityThread.main(ActivityThread.java:5039)
10-19 02:13:54.232: E/AndroidRuntime(1267):     at java.lang.reflect.Method.invokeNative(Native Method)
10-19 02:13:54.232: E/AndroidRuntime(1267):     at java.lang.reflect.Method.invoke(Method.java:511)
10-19 02:13:54.232: E/AndroidRuntime(1267):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
10-19 02:13:54.232: E/AndroidRuntime(1267):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
10-19 02:13:54.232: E/AndroidRuntime(1267):     at dalvik.system.NativeStart.main(Native Method)