JAVA(2) -解析JSON文件

{
    "versionNum":"KD6-H6116GHIL-QGo-TRUNK-OP-201111V210",
    "platform":"mt6761",
    "summary":{
        "result":true,
        "totalNum":248,
        "totalTime":"439723.0ms",
        "percent":"117.35%"
    },
    "AllApks":[
        {
            "packagename":"com.nebula.mamu",
            "launchtime":"3094.75ms"
        },
        {
            "packagename":"com.forshared",
            "launchtime":"998.75ms"
        }
    ]
}
读取summary中的值
 //对json文件进行解析,将json文件读取为string字符串
 //JsonFileToString:判断是否为json文件,将json文件中的所有内容放入缓存中,返回为一个字符串
String result = JsonHelper.JsonFileToString(childs[i].getAbsolutePath()); //json中的所有内容
JSONObject  obj = JSONObject.parseObject(result); //转换成为object
String  platform=  obj.getString("platform"); //获取json中的节点,string类型,平台类型
JSONObject sum=obj.getJSONObject("summary");//获取json对象,名称为summary
int TotalNum=sum.getIntValue("totalNum"); //获取num
String TotalTime=sum.getString("totalTime"); //获取花费总时间
String precent = sum.getString("percent"); //获取结果比例


public static String JsonFileToString(String path){
	if (!path.endsWith(".json")){
        System.out.println("NOT a json File pelese check");
        System.exit(1);
	}
    try {
        //读取json文件
        return   fileRead(path);
    } catch (Exception e) {
        e.printStackTrace();
    }
 return  "";
}


public static String fileRead( String path) throws Exception {
    File file = new File(path);//定义一个file对象,用来初始化FileReader
    FileReader reader = new FileReader(file);//定义一个fileReader对象,用来初始化BufferedReader
    BufferedReader bReader = new BufferedReader(reader);//new一个BufferedReader对象,将文件内容读取到缓存
    StringBuilder sb = new StringBuilder();//定义一个字符串缓存,将字符串存放缓存中
    String s = "";
    while ((s =bReader.readLine()) != null) {//逐行读取文件内容,不读取换行符和末尾的空格
        sb.append(s);//将读取的字符串添加换行符后累加存放在缓存中
    }
    bReader.close();
    String str = sb.toString();
    return str;
}
读取Allpackage中的值
List<Detail> details=new ArrayList<>();
JSONArray  jas=obj.getJSONArray("AllApks"); //所有apk的名称
int size=jas.size(); //循环
 for (int j=0;j<size;j++){
        jas.getJSONObject(j).getString("packagename"));
        jas.getJSONObject(j).getString("launchtime"));
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值