Java 读取 Json格式的 内容

Posted 柒弦宇轩

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 读取 Json格式的 内容相关的知识,希望对你有一定的参考价值。

一、Json 报文格式如下:

      

 

二、获取 Json 报文中字段的内容

 1 import java.io.IOException;
 2 import com.fasterxml.jackson.core.JsonProcessingException;
 3 import com.fasterxml.jackson.databind.JsonNode;
 4 import com.fasterxml.jackson.databind.ObjectMapper;
 5 
 6 public class ReadJsonValue_1_00_001 {
 7     
 8     public static void main(String args[]) {
 9         
10         String test = "{\\n" +
11             "  \\"results\\":\\n" +
12             "  [\\n" +
13             "    {\\n" +
14             "      \\"objectID\\":\\"357\\",\\n" +
15             "      \\"geoPoints\\":\\n" +
16             "      [\\n" +
17             "        {\\n" +
18             "          \\"x\\":504604.59802246094,\\n" +
19             "          \\"y\\":305569.9150390625\\n" +
20             "        }\\n" +
21             "      ]\\n" +
22             "    },\\n" +
23             "    {\\n" +
24             "      \\"objectID\\":\\"358\\",\\n" +
25             "      \\"geoPoints\\":\\n" +
26             "      [\\n" +
27             "        {\\n" +
28             "          \\"x\\":504602.2680053711,\\n" +
29             "          \\"y\\":305554.43603515625\\n" +
30             "        }\\n" +
31             "      ]\\n" +
32             "    }\\n" +
33             "  ]\\n" +
34             "}\\n";
35 
36         System.out.println( test );
37         
38         ObjectMapper mapper = new ObjectMapper();
39         JsonNode node = null;
40         try {
41             node = mapper.readTree( test );
42         } catch (JsonProcessingException e) {
43             e.printStackTrace();
44         } catch (IOException e) {
45             e.printStackTrace();
46         }
47         
48         //将Json串以树状结构读入内存
49         JsonNode results = node.get("results");//得到results这个节点下的信息
50         System.out.println( "results.size() = " + results.size() );
51         
52         for(int i = 0; i < results.size(); i++ ) //遍历results下的信息,size()函数可以得节点所包含的的信息的个数,类似于数组的长度
53         {
54             System.out.println( results.get(i).get("objectID").textValue() ); //读取节点下的某个子节点的值
55             
56             JsonNode geoNumber = results.get(i).get("geoPoints");
57             System.out.println( "geoNumber() = " + geoNumber.size() );
58             for(int j = 0; j < geoNumber.size(); j++ )   //循环遍历子节点下的信息
59             {
60                 System.out.println(geoNumber.get(j).get("x").doubleValue()+"--"+geoNumber.get(j).get("y").doubleValue());
61             }
62         }
63     }
64 
65 }


三、读取结果为

      

 

以上是关于Java 读取 Json格式的 内容的主要内容,如果未能解决你的问题,请参考以下文章

Java 读取 Json格式的 内容

java怎么读取json格式的数据

java怎么读取json格式的数据

JAVA 如何读取JSON编码格式的数据?

关于Java语言的eclipse读取数据库,并将数据转换成JSON格式输出

C#利用newtonsoft.json读取.so配置文件内容