JSON 对象的 Java 表示

标签 java android json gson

我正在尝试反序列化以下字符串,我是 java 的新手,我无法让它在我的生活中工作......我现在只想解码对象中的两个字符串。下面是我的 JSON 和 Java 类。我得到的结果变量正常。

{
   "result": "true",
   "recentlyMarkedTerritories": {
      "0": {
         "pk_activity": "471",
         "fk_activity_type": "100",
         "activity_content": "Hhhhh",
         "fk_user": "2",
         "activity_image": "2_QZe73f4t8s3R1317230457.jpg",
         "created": "1317244857",
         "activity_status": "1",
         "activity_location_lat": "43.515283",
         "activity_location_lon": "-79.880678",
         "fk_walk": null,
         "fk_event_location": "73",
         "user_point": "0",
         "public_image": "0",
         "fk_event_location_lat": "43.515273",
         "fk_event_location_lon": "-79.879989",
         "profile_image": "2_y9JlkI3CZDml1312492743.jpg",
         "user_gender": "1",
         "user_dob": "236073600",
         "user_nickname": "junoman",
         "isFriend": "false",
         "profile_image_thumb": "2_y9JlkI3CZDml1312492743_t.jpg",
         "activity_image_thumb": "2_QZe73f4t8s3R1317230457_t.jpg",
         "relationship_status_idx": "2",
         "isBlocked": "false"
      },
      "1": {
         "pk_activity": "469",
         "fk_activity_type": "100",
         "activity_content": "Jsjsjs",
         "fk_user": "1",
         "activity_image": null,
         "created": "1317244508",
         "activity_status": "1",
         "activity_location_lat": "43.515283",
         "activity_location_lon": "-79.880678",
         "fk_walk": null,
         "fk_event_location": "73",
         "user_point": "0",
         "public_image": "0",
         "fk_event_location_lat": "43.515273",
         "fk_event_location_lon": "-79.879989",
         "profile_image": "1_4Cpkofueqnrb1316895161.jpg",
         "user_gender": "1",
         "user_dob": "116841600",
         "user_nickname": "JoePennington",
         "isFriend": "false",
         "profile_image_thumb": "1_4Cpkofueqnrb1316895161_t.jpg",
         "activity_image_thumb": null,
         "relationship_status_idx": "1",
         "isBlocked": "false"
      },
      .....
   }
}

下面是我的java类

RecentActivity infoList = null;
Gson gson = new Gson();
infoList = gson.fromJson(JSONString, RecentActivity.class);

public class RecentActivity {
    String result;
    recentlyMarkedTerritories recentlyMarkedTerritories = null;

    public RecentActivity() {

    }

    public class recentlyMarkedTerritories {
        public Set<recentlyMarkedTerritories> pk_activity = new HashSet<recentlyMarkedTerritories>() ;

        public recentlyMarkedTerritories() {    }
    }
}

请原谅我缺乏描述,但我相信代码会有所帮助。 JSON 已在其他应用程序中使用,因此无法更改它。:(

谢谢!

最佳答案

这里有一些不错的 JSON 教程,可以帮助您。

GSON

JSON

JSON Example with source code

已更新

这样试试,

 try {
            JSONObject object = new JSONObject(jsonString);
            JSONObject myObject = object.getJSONObject("recentlyMarkedTerritories");

            for (int i = 0; i < object.length(); i++) {
                JSONObject myObject2 = myObject.getJSONObject(Integer.toString(i));
                System.out.println(myObject2.toString(2));  
            }
        } catch (Exception e) {
            e.printStackTrace();
        }

关于JSON 对象的 Java 表示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7669730/

相关文章:

android - 音轨setVolume-最小值

java - 如何确定一个 bom 在 Maven 中的依赖(导入)位置?

java - 基于图 block 的游戏中的重复图 block

android - 从选项卡 Activity 中打开另一个 Activity

Android - 找不到 LinearLayout 的句柄

javascript - json : "missing ] after element list" or just "undefined" 错误

json - 使用 Spring MVC、Jackson 和 Hibernate 序列化具有多对多关系的对象

Java - 在元素随机化后恢复列表的原始顺序

java - 部署 Java Web 服务的要求

c# - Json 从实体返回额外的值