关于json
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于json相关的知识,希望对你有一定的参考价值。
JSON概念:
JSON(javascript Object Notation) 是一种轻量级的数据交换格式。它使得人们很容易的进行阅读和编写。同时也方便了机器进行解析和生成。它是基于JavaScript Programming Language, Standard ECMA-262 3rd Edition – December 1999的一个子集。
JSON采用完全独立于程序语言的文本格式,但是也使用了类C语言的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。
JSON解析方式:
Java中本身是没有Json的.如果我们需要使用Json.需要下载JSON.jar或者使用一些第三方的.比如GSON下载地址如下:
https://github.com/google/gson.git
https://github.com/stleary/JSON-java.git
或者选择从Maven仓库中下载JSON.lib.但使用Maven仓库中的Json.lib.推荐的JDK版本是1.5.因此推荐从github上下载json-java或者.gson
JSON文件示例:
{
"success": "1",
"result": [
{
"weaid": "1",
"days": "2017-01-20",
"week": "星期五",
"cityno": "beijing",
"citynm": "北京",
"cityid": "101010100",
"temperature": "1℃/-8℃",
"humidity": "0℉/0℉",
"weather": "晴转多云",
"weather_icon": "http://api.k780.com:88/upload/weather/d/0.gif",
"windid": "20",
"winpid": "125"
}
]
}
JSON解析代码:
public class ParserJson {
public static void main(String args[]){
JsonParser parse =new JsonParser(); //创建json解析器
try {
JsonObject json=(JsonObject) parse.parse(new FileReader("weather.json")); //创建jsonObject对象
System.out.println("resultcode:"+json.get("resultcode").getAsInt()); //将json数据转为为int型的数据
System.out.println("reason:"+json.get("reason").getAsString()); //将json数据转为为String型的数据
JsonObject result=json.get("result").getAsJsonObject();
JsonObject today=result.get("today").getAsJsonObject();
System.out.println("temperature:"+today.get("temperature").getAsString());
System.out.println("weather:"+today.get("weather").getAsString());
} catch (JsonIOException e) {
e.printStackTrace();
} catch (JsonSyntaxException e) {
e.printStackTrace();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
以上是关于关于json的主要内容,如果未能解决你的问题,请参考以下文章