代码如下:JSONArray jsonArray = new JSONArray(); JSONObject jsonObject = new JSONObject(); JSONObject objects[] = new JSONObject[5]; try { objects[0].put("ProtocolVersion", GFPSMessage.getProtocolVersion()); objects[1].put("Timestamp", GFPSMessage.getTimestamp()); objects[2].put("CommunicationMode", GFPSMessage.getCommunicationMode()); objects[3].put("NumberOfMessage", GFPSMessage.getNumberOfMessage()); objects[4].put("PowerManagement", GFPSMessage.getPowerManagement()); jsonArray.put(objects); jsonObject.put("GFPSMessage", jsonArray); // Log.d("postapp", jsonObject.toString()); } catch (JSONException e) { e.printStackTrace(); Log.d("postapp", "JSONException"); }错误如下:03-15 14:14:20.671 1117-1165/com.example.moonslides.networkposttest W/System.err﹕ java.lang.NullPointerException03-15 14:14:20.674 1117-1165/com.example.moonslides.networkposttest W/System.err﹕ at com.example.moonslides.networkposttest.GeneralFrameworkProtocolSendMessage.testJson(GeneralFrameworkProtocolSendMessage.java:154)03-15 14:14:20.675 1117-1165/com.example.moonslides.networkposttest W/System.err﹕ at com.example.moonslides.networkposttest.MainActivity$2.run(MainActivity.java:85)03-15 14:14:20.675 1117-1165/com.example.moonslides.networkposttest W/System.err﹕ at java.lang.Thread.run(Thread.java:841)一个是怎么解决,而是可以不可以这样来实现创指定个数的JSONob? 我写不出来 - - for (int i = 0;i<5;i++) { JSONObject object"i" = new JSONObject(); }
错误是指MainActivity的第85行,你看下你代码,如果解析出来的一个类为空,这个类在使用的时候就会报空指针,你加个非空判断。另外,你用的是eclipse么,如果是Android studio的话,你引入个gson或者fastjson依赖,一句话就解析完成了;还有个插件,GsonFormat,直接把JSON完整的粘贴到里面,自动生成实体类