【发布时间】:2016-10-17 17:32:48
【问题描述】:
如何编写代码来读取和显示来自web_block、port_block 和user 的键和值?
我的 JSON 文件test.json:
{
"web_block":[
{
"url" : "www.facebook.com",
"action" : "deny"
},
{
"url" : "www.google.com",
"action" : "deny"
},
{
"url" : "www.youtube.com",
"action" : "deny"
},
{
"url" : "www.wu.ac.th",
"action" : "allow"
}
],
"port_block":[
{
"port" : "80",
"protocol" : "tcp",
"action" : "block"
},
{
"port" : "443",
"protocol" : "udp",
"action" : "allow"
}
],
"user": [
{
"username" : "toms"
}
]
}
我尝试了以下操作:
JSONParser parser = new JSONParser();
try {
Object obj = parser.parse(new FileReader("d:\\test.json"));
JSONObject jsonObject = (JSONObject) obj;
String name = (String) jsonObject.get("web_block");
System.out.println(url);
long age = (Long) jsonObject.get("port_block");
System.out.println(port);
但还是错了。
【问题讨论】:
-
你可以使用Jackson之类的库来解析JSON。
-
互联网上有几十个关于在 Java 中解析 JSON 的小例子,无论有没有像 Jackson 或 GSON 这样的数据绑定库。 Google 是您的朋友。