JSON入门Java篇-6-对JSON数据进行解析操作

       前面几篇文章我们一直在做如何构造JSON数据,这篇,我们介绍一个逆向操作,也就是解析JSON数据。解析JSON数据,在接口自动化测试断言部分经常要用到,所以好好看看和本篇内容,掌握如何解析JSON数据。我们需要拿前面文件中的JSON数据,保存到一个JSON文件里,这个当做我们的JSON文件,然后通过相关lib提供的方法,去读取文件内容,然后获取对应键的值。

1.构造一个test.json文件

先在当前eclips项目的根目录,创建一个test.json文件,然后把前面几篇文章中输出的json数据黏贴进入,保存。

2.现在commons-io.jar文件,并放到项目build path

浏览器打开地址:http://mvnrepository.com/artifact/commons-io/commons-io/2.5,点击下图的下载链接

下载好的文件,添加当项目的build path。

3. 新建一个ReadJSON.java文件,写入如下内容。

import java.io.File;
import java.io.IOException;

import org.apache.commons.io.FileUtils;
import org.json.JSONArray;
import org.json.JSONObject;

public class ReadJSON {

	public static void main(String[] args) throws IOException {
		// TODO Auto-generated method stub
		
		//获取文件路径并加载
		File file = new File("./test.json");
		
		//通过 commons-io 里方法读取文件内容
		String content = FileUtils.readFileToString(file, "utf8");
		//转换JSON对象进行处理
		JSONObject jsonObject = new JSONObject(content);
		
		//根据getString()获取姓名
		System.out.println("姓名是:"+jsonObject.getString("name"));
		//根据getDouble()获取年龄
		System.out.println("年龄:"+jsonObject.getDouble("age"));
		//获取是否有女朋友
		System.out.println("是否有女朋友:"+jsonObject.getBoolean("has_girlfriend"));
		
		//把json数组对象转换成Java的数组对象
		JSONArray jsonarray = jsonObject.getJSONArray("major");
		//变量专业
		for(int i=0; i<jsonarray.length(); i++){
			
			System.out.println("专业-"+(i+1)+":"+ jsonarray.get(i));
		}
		
	}

}
运行结果:

姓名是:张三
年龄:25.2
是否有女朋友:false
专业-1:理发师
专业-2:挖掘机


  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值