如何使用JSONObject(org.json)获取嵌套数组

吃豆子

这是我的JSON文件的示例:

{

    "type": "FeatureCollection",
    "crs": {
        "type": "name",
        "properties": {
            "name": "urn:ogc:def:crs:OGC:1.3:CRS84"
        }
    },
    "features": [
        {
            "type": "Feature",
            "properties": {
                "KKOD": 414,
                "KATEGORI": "Kommun",
                "KOMMUNKOD": 2584,
                "KOMMUNNAMN": "Kiruna",
                "LANSKOD": 25,
                "LANSNAMN": "Norrbottens län",
                "KOM_KOD": "2584",
                "LAN_KOD": "25"
            },
            "geometry": {
                "type": "Polygon",
                "coordinates": [
                    [
                        [
                            20.468899715356947,
                            69.0576379270828
                        ],
                        [
                            20.54863836554442,
                            69.05997605732921
                        ]
                    ]
                ]
            }
        },
        {
            "type": "Feature",
            "properties": {
                "KKOD": 414,
                "KATEGORI": "Kommun",
                "KOMMUNKOD": 1262,
                "KOMMUNNAMN": "Lomma",
                "LANSKOD": 12,
                "LANSNAMN": "Skåne län",
                "KOM_KOD": "1262",
                "LAN_KOD": "12"
            },
            "geometry": {
                "type": "Polygon",
                "coordinates": [
                    [
                        [
                            13.11196493557692,
                            55.702721301997265
                        ],
                        [
                            13.112159474347964,
                            55.69989518845077
                        ],
                        [
                            13.111027902960512,
                            55.69899875723693
                        ]
                    ]
                ]
            }
        }
    ]

}

我想将坐标数组解析为Java中的Double或String数组。这就是我设法从属性“ KOMMUNNAMN”中获取字符串的方法:

JSONObject json = new JSONObject(readInput()); //readInput() returns the JSON document as String
JSONArray jsonarr = json.getJSONArray("features");
json = jsonarr.getJSONObject(0);
json = json.getJSONObject("properties");
String namn = json.getString("KOMMUNNAMN");

我如何从这里开始?谢谢!

WKS

您的坐标实体被不必要地嵌套,并且读取效果不佳。更改为

"coordinates": [
        {
            "latitude": 13.11196493557692,
            "longitude": 55.702721301997265
        },
        {
            "latitude": 13.112159474347964,
            "longitude": 55.69989518845077
        },
        {
            "latitude": 13.111027902960512,
            "longitude": 55.69899875723693
        }
    ]

读作“坐标包含位置对象的数组”,这表示一个更好的JSON结构。

您现在应该使用以下代码解析坐标:

JSONObject json = new JSONObject(readInput()); //readInput() returns the JSON document as String
JSONArray jsonarr = json.getJSONArray("features");
json = jsonarr.getJSONObject(0);
json = json.getJSONObject("geometry");
jsonarr = json.getJSONArray("coordinates");

for(int i=0;i<jsonarr.length();i++){
    JSONObject location = jsonarr.getJSONObject(i);
    String latitude = location.getString("latitude");
    String longitude = location.getString("longitude");
}

另外,我不知道这是您的最终代码还是子集,但请确保您进行防御性分析。检查数组的长度以及对象是否为null比抛出并处理JSONException更好。

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

MySQL到JSON,如何获取嵌套数组?

来自分类Dev

使用php从json中的嵌套数组获取数据

来自分类Dev

在JSONObject(org.json)中找不到嵌套数组

来自分类Dev

json / php:如何从嵌套和非嵌套数组获取信息

来自分类Dev

json / php:如何从嵌套和非嵌套数组获取信息

来自分类Dev

如何从嵌套数组获取值?

来自分类Dev

如何从嵌套数组中获取数据

来自分类Dev

如何创建嵌套数组JSON?

来自分类Dev

使用JQuery解析JSON嵌套数组

来自分类Dev

如何从JSON AngularJS获取嵌套数据

来自分类Dev

使用PHP对来自SQL查询的嵌套数组进行分组以获取jqTree插件的JSON

来自分类Dev

如何使用javascript创建嵌套数组以获取多个账单?

来自分类Dev

我如何顺序获取嵌套数组的数组?

来自分类Dev

JSONObject中的嵌套数组返回为空(org.json)

来自分类Dev

如何使用嵌套数组将JSON解析为对象

来自分类Dev

如何从嵌套数组中提取JSON数据?使用Android

来自分类Dev

如何在Android上使用Json解析嵌套数组

来自分类Dev

如何使用 JavaScript 解析嵌套数组中的 JSON 值

来自分类Dev

如何从PHP中的嵌套数组获取值

来自分类Dev

满足条件后如何获取嵌套数组的ID?

来自分类Dev

如何从Postgres jsonb嵌套数组获取字段

来自分类Dev

如何从嵌套数组中获取数据[Laravel]

来自分类Dev

如何根据给定的匹配键获取特定的嵌套数组?

来自分类Dev

如何通过php从嵌套数组中获取API数据

来自分类Dev

如何从带有对象的嵌套数组中获取值

来自分类Dev

使用js获取嵌套数组对象的句柄

来自分类Dev

Spring Data Mongo-如何获取嵌套的嵌套数组以获取嵌套值?

来自分类Dev

如何使用org.json.JSONObject(Object)忽略字段

来自分类Dev

如何从PHP中的json_decode访问嵌套数组?

Related 相关文章

  1. 1

    MySQL到JSON,如何获取嵌套数组?

  2. 2

    使用php从json中的嵌套数组获取数据

  3. 3

    在JSONObject(org.json)中找不到嵌套数组

  4. 4

    json / php:如何从嵌套和非嵌套数组获取信息

  5. 5

    json / php:如何从嵌套和非嵌套数组获取信息

  6. 6

    如何从嵌套数组获取值?

  7. 7

    如何从嵌套数组中获取数据

  8. 8

    如何创建嵌套数组JSON?

  9. 9

    使用JQuery解析JSON嵌套数组

  10. 10

    如何从JSON AngularJS获取嵌套数据

  11. 11

    使用PHP对来自SQL查询的嵌套数组进行分组以获取jqTree插件的JSON

  12. 12

    如何使用javascript创建嵌套数组以获取多个账单?

  13. 13

    我如何顺序获取嵌套数组的数组?

  14. 14

    JSONObject中的嵌套数组返回为空(org.json)

  15. 15

    如何使用嵌套数组将JSON解析为对象

  16. 16

    如何从嵌套数组中提取JSON数据?使用Android

  17. 17

    如何在Android上使用Json解析嵌套数组

  18. 18

    如何使用 JavaScript 解析嵌套数组中的 JSON 值

  19. 19

    如何从PHP中的嵌套数组获取值

  20. 20

    满足条件后如何获取嵌套数组的ID?

  21. 21

    如何从Postgres jsonb嵌套数组获取字段

  22. 22

    如何从嵌套数组中获取数据[Laravel]

  23. 23

    如何根据给定的匹配键获取特定的嵌套数组?

  24. 24

    如何通过php从嵌套数组中获取API数据

  25. 25

    如何从带有对象的嵌套数组中获取值

  26. 26

    使用js获取嵌套数组对象的句柄

  27. 27

    Spring Data Mongo-如何获取嵌套的嵌套数组以获取嵌套值?

  28. 28

    如何使用org.json.JSONObject(Object)忽略字段

  29. 29

    如何从PHP中的json_decode访问嵌套数组?

热门标签

归档