首页 > 代码库 > 关于json

关于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