加入收藏 | 设为首页 | 会员中心 | 我要投稿 北几岛 (https://www.beijidao.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

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 ? i = 0; i < size; i++){ JSONObject jsonObject = jsonArray.getJSONObject(i); System.out.println("[" + i + "]name=" + jsonObject.get("name")); System.out.println("[" + i + "]package_name=" + jsonObject.get("package_name")); System.out.println("[" + i + "]check_version=" + jsonObject.get("check_version")); } }
} 四、执行后的结果如下: 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


(编辑:北几岛)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读