linux创建json文件怎么打开,JSON格式生成与JSON解析小例

然是说json那就先简单介绍一下什么是json吧。

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成。

json的具体数据交换格式:(存的是张飞的个人信息包括姓名、年龄、地址(城市、街道))

{"address":{"street":"和兴路","city":"哈尔滨"},"age":22,"name":"张飞"}

如何在编译器中生成改格式呢?

我们定义一个getJson()方法用于生成此种格式,代码如下:

getJson()方法

public static String getJson() throws Exception{

String strName = "张飞";

int niAge = 22;

//生成一个json对象

JSONObject json = new JSONObject();

//向该json对象中通过put(String,Object)方法,添加属性和该属性对应的值

json.put("name", strName);

json.put("age", niAge);

//json对象中的地址包括城市和街道,所以将地址定义成一个json对象

JSONObject strAddress = new JSONObject();

String strCity = "哈尔滨";

String strStreet = "和兴路";

strAddress.put("city", strCity);

strAddress.put("street", strStreet);

json.put("address", strAddress);

System.out.println(json.toString());

return json.toString();

}

下面我们看一个方法来介绍一下,对json数据转换格式的解析:

我们定义了一个jsonParse(String strJson)的方法用于解析该格式,具体代码如下:

jsonParse(String strJson):

public static void jsonParse(String strJson) throws Exception{

//创建json对象

JSONObject json = new JSONObject(strJson);

//通过json的getString(String)方法获得对应属性的属性值

String name = json.getString("name");

int age = json.getInt("age");

//通过json的getJSONObject(String)方法获得此json对象中定义的json对象(就是对json的嵌套使用)

JSONObject address = json.getJSONObject("address");

String city = address.getString("city");

String street = address.getString("street");

//输入获得的json对象中属性值

System.out.println("姓名:"+name+",年龄:"+age+",城市:"+city+",街道:"+street);

}

我们通过一个main函数调用上面两个方法看一下具体的结果:

main函数:

public class Json {

public static void main(String[] args) throws Exception {

//调用getJson()方法

String strJson = getJson();

//调用jsonParse(String)方法

jsonParse(strJson);

}

}

输入结果为:

{"address":{"street":"和兴路","city":"哈尔滨"},"age":22,"name":"张飞"}

姓名:张飞,年龄:22,城市:哈尔滨,街道:和兴路

在实际中getJson()方法和jsonParse(String)方法应该写在类Json中,与main()方法并列,这里分开只是为了代码更加清晰的展现。

推荐阅读:

0b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值