JSON PARSE无值

约翰逊

尝试解析此JSON时似乎丢失了一些内容。我继续收到项目JSON错误的“无值”。(请参阅下面的logcat)。

这是我从应用程序引擎数据存储中提取的JSON:

{"items":[{"description":"payment confirmed","emailAddress":"[email protected]","id":"Fri Aug 30 17:20:35 EDT 2013","nameFirst":"Bill","nameLast":"Sanders","phone":"5555555555","state":"KS","streetAddress":"123 Rick Dr","zipCode":"44444","kind":"contactinfoendpoint#resourcesItem"},{"description":"payment confirmed","emailAddress":"[email protected]","id":"Fri Aug 30 17:21:37 EDT 2013","nameFirst":"Frank","nameLast":"Lloyd","phone":"5554567896","state":"KY","streetAddress":"999 Rock St","zipCode":"44555","kind":"contactinfoendpoint#resourcesItem"}],"kind":"contactinfoendpoint#resources","etag":"\"NiDXI3T89oRrAPGJAhgGQje1Z0w/z0W4p01mjHc5cNgcOt3Kb_1xo8E\""}

当我运行此代码时,我会在LOGCAT中得到此代码,并且布局充气器为空白:

08-31 11:11:37.470: E/log_tag(15026): Error parsing data org.json.JSONException: No value for item

这是活动中的代码:

public class FinderActivity extends ListActivity   {


private static final String TAG_ID = "id";
private static final String TAG_FIRSTNAME = "nameFirst";
private static final String TAG_LASTNAME = "nameLast";
private static final String TAG_EMAIL = "emailAddress";
private static final String TAG_ADDRESS = "address";
private static final String TAG_STATE = "state";

private static final String TAG_PHONE = "phone";
JSONArray contacts = null;

ArrayList<HashMap<String, String>> contactList = new ArrayList<HashMap<String, String>>();

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    new EndpointsTask().execute(getApplicationContext());

}

public class EndpointsTask extends AsyncTask<Context, Integer, Long> {

    public Long doInBackground(Context... contexts) {

      Contactinfoendpoint.Builder endpointBuilder = new Contactinfoendpoint.Builder(
          AndroidHttp.newCompatibleTransport(),
          new JacksonFactory(),
          new HttpRequestInitializer() {
          public void initialize(HttpRequest httpRequest) { }
          });
  Contactinfoendpoint endpoint = CloudEndpointUtils.updateBuilder(
  endpointBuilder).build();

  try {

     // final TextView detail = (TextView)findViewById(R.id.textView100);

    String apples = endpoint.listContactInfo().execute().toString();

    JSONObject jObject = new JSONObject(apples);

           try{
        //Get the element that holds the earthquakes ( JSONArray )
        JSONArray  contacts = jObject.getJSONArray("item");

        for(int i = 0; i < contacts.length(); i++){
            JSONObject c = contacts.getJSONObject(i);

            // Storing each json item in variable
            String id = c.getString(TAG_ID);
            String nameFirst = c.getString(TAG_FIRSTNAME);
            String nameLast = c.getString(TAG_LASTNAME);
            String email = c.getString(TAG_EMAIL);
            String address = c.getString(TAG_ADDRESS);
            String phone = c.getString(TAG_PHONE);

            // creating new HashMap
            HashMap<String, String> map = new HashMap<String, String>();

            // adding each child node to HashMap key => value
            map.put(TAG_ID, id);
            map.put(TAG_FIRSTNAME, nameFirst);
            map.put(TAG_EMAIL, email);
            map.put(TAG_PHONE, phone);

            // adding HashList to ArrayList
            contactList.add(map);

        }

           }catch(JSONException e)        {
             Log.e("log_tag", "Error parsing data "+e.toString());
           }

           ListAdapter adapter = new SimpleAdapter(FinderActivity.this, contactList,
                    R.layout.main,
                    new String[] { TAG_FIRSTNAME, TAG_EMAIL, TAG_PHONE }, new int[] {
                            R.id.name, R.id.email, R.id.mobile });

           setListAdapter(adapter);

            // selecting single ListView item
            ListView lv = getListView();

  } catch (IOException e) {
    e.printStackTrace();
  } catch (JSONException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
      return (long) 0;
    }


    }
普拉泰克

你的对象名称是不是item它的items

使用以下代码获取项目

JSONObject jsonObj = new JSONObject(str);
JSONArray jsonArr = jsonObj.getJSONArray("items");

 for(int i =0 ; i<jsonArr.length() ;i++ ){
     JSONObject jsonObj1 = jsonArr.getJSONObject(i);

     System.out.println();
     System.out.println((i+1)+" ==========JSON OBJECT IS :========== ");

     Iterator<String> iter = jsonObj1.keys();
     while(iter.hasNext()){
         String key = iter.next();
         System.out.println(key + " : " + jsonObj1.get(key));


  }
 }

输出 :

1 ==========JSON OBJECT IS :========== 
streetAddress : 123 Rick Dr
id : Fri Aug 30 17:20:35 EDT 2013
phone : 5555555555
nameLast : Sanders
nameFirst : Bill
description : payment confirmed
zipCode : 44444
state : KS
emailAddress : [email protected]
kind : contactinfoendpoint#resourcesItem

2 ==========JSON OBJECT IS :========== 
streetAddress : 999 Rock St
id : Fri Aug 30 17:21:37 EDT 2013
phone : 5554567896
nameLast : Lloyd
nameFirst : Frank
description : payment confirmed
zipCode : 44555
state : KY
emailAddress : [email protected]
kind : contactinfoendpoint#resourcesItem

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

JSON解析无值

来自分类Dev

JSON数组无值

来自分类Dev

返回无值的Python JSON(Telegram API)

来自分类Dev

如何修复 Json 中 X 的无值

来自分类Dev

Json.Parse自动更改值

来自分类Dev

无法显示JSON数组,JSONException:无值错误

来自分类Dev

断言错误:JUnit测试中的JSON路径无值

来自分类Dev

Android JsonObject 错误 org.json.JSONException:无值

来自分类Dev

在 Javascript 中从 JSON 获取多个无组织的值

来自分类Dev

播放:如何从JSON中删除无值的字段并使用它们创建新的JSON

来自分类Dev

播放:如何从JSON中删除无值的字段并使用它们创建新的JSON

来自分类Dev

将空值或无值发送到JSON Web服务检索失败

来自分类Dev

JSON.parse无法在值中使用双引号

来自分类Dev

JSON.parse:对象的属性值后应为','或'}'

来自分类Dev

如何在Yii2中设置Cookie的纯值(无json)

来自分类Dev

Facebook图形中出现错误-org.json.JSONException:名称无值

来自分类Dev

如果值为无,则在 Postgres json 类型列中插入什么

来自分类Dev

错误域= NSCocoaErrorDomain代码= 3840“无值。” 比较两个值时。PHP,JSON和Swift

来自分类Dev

返回空值时 JSON.stringify 日期转换为 JSON.parse

来自分类Dev

从JSON构建HTML(无jQuery)

来自分类Dev

JSON.parse Dynamodb

来自分类Dev

JSON.parse Dynamodb

来自分类Dev

How to parse this JSON with GSON?

来自分类Dev

json.parse问题

来自分类Dev

Wiki上的JSon Parse

来自分类Dev

jsonpath:JSON路径:$ .id无值,例外:路径'id'正在应用于数组。数组不能具有属性

来自分类Dev

为什么JSON.parse更改嵌套数组中的值?

来自分类Dev

JSON.parse 错误地解析/转换大数字并始终舍入值

来自分类Dev

JSON.parse从JSON返回[object]

Related 相关文章

热门标签

归档