Java解析json文件的方法--直接拷贝可以使用
发布时间:2021-07-06 05:52:57 所属栏目:大数据 来源: https://blog.csdn.net/guo1331
导读:原文链接:http://blog.sina.com.cn/s/blog_628cc2b70101dydc.html 原作者指定的jar下载 需要csdn的积分,积分充足的可以直接下载,没有的可以去自己的maven仓库中去找。 再解析json文件的时候,明明 json的格式正确,IDE却报错: @L_404_1@ 原因如下: 一、
原文链接:http://blog.sina.com.cn/s/blog_628cc2b70101dydc.html 原作者指定的jar下载 需要csdn的积分,积分充足的可以直接下载,没有的可以去自己的maven仓库中去找。 再解析json文件的时候,明明 json的格式正确,IDE却报错: @L_404_1@ 原因如下: 一、首先需要在Eclipse工程中导入相关的jar包, jar包参见链接:http://download.csdn.net/detail/filywysss/4991496 二、 提供一份待解析的json文件,apkinfo.json如下: [ { "name":"帐号", "package_name":"com.android.account", "check_version":"1.2" }, { "name":"系统升级", "package_name":"com.android.osupdate", "check_version":"1.0" }, ] 三、 Java代码由两个类组成,一个是读取文件内容的Util类,还有一个是主程序Test类。 (1) Util.java: import java.io.BufferedReader; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStreamReader;public class Util { public String ReadFile(String Path){ BufferedReader reader = null; String laststr = ""; try{ FileInputStream fileInputStream = new FileInputStream(Path); InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream,"UTF-8"); reader = new BufferedReader(inputStreamReader); String tempString = null; while((tempString = reader.readLine()) != null){ laststr += tempString; } reader.close(); }catch(IOException e){ e.printStackTrace(); }finally{ if(reader != null){ try { reader.close(); } catch (IOException e) { e.printStackTrace(); } } } return laststr; } } (2) Test.java: import java.util.ArrayList; import java.util.Iterator; import java.util.List; import net.sf.json.JSONArray; import net.sf.json.JSONObject; public class Test { public static void main(String[] args) { // TODO Auto-generated method stub String JsonContext = new Util().ReadFile("D:testapkinfo.json"); JSONArray jsonArray = JSONArray.fromObject(JsonContext); int size = jsonArray.size(); System.out.println("Size: " + size); for(int ? } 四、执行后的结果如下: Size: 2 [0]name=帐号 [0]package_name=com.android.account [0]check_version=1.2 [1]name=系统升级 [1]package_name=com.android.osupdate [1]check_version=1.0 (编辑:北几岛) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |