大佬教程收集整理的这篇文章主要介绍了fastjson解析本地json数据二,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
具体的fastjson我就不再次介绍了不懂得看我上一篇博客http://blog.csdn.net/kluing/article/details/40982143
先看一下解析的文本内容:
{ "id": "chart1","series": [{ "id": "bar1","type": "bar","groupId": "0","horizonal": false,"percentage": true,"stackType": "stack" },{ "id": "bar2",{ "id": "bar3","groupId": "1",{ "id": "line1","type": "line","yAxis": "rightAxis" }],"tools": [{ "type": "categoryTool" }] }
下面介绍如何解析assets的json数据文件
先写一个解析的类,具体什么作用我都用log来解释了 ,不懂得可以看下最后的log图与解析的内容比对。
<span style="font-size:18px;">public class JsonTools { public static JSONObject jsonData(Context context,String fileName){//filename assets目录下的json文件名 JSONObject jsonDate=null; try { InputStreamReader inputStreamReader=new InputStreamReader(context.getAssets().open(fileName),"UTF-8"); BufferedReader bufferedReader=new BufferedReader(inputStreamReader); String line; StringBuilder StringBuilder=new StringBuilder(); while ((line=bufferedReader.readLine())!=null){ StringBuilder.append(linE); } bufferedReader.close(); inputStreamReader.close(); jsonDate=JSON.parSEObject(StringBuilder.toString());//得到JSONobject对象 Log.e("jsonDate","=="+jsonDatE); String idArray=jsonDate.getString("id");//得到id的内容 Log.e("idArray","=="+idArray); JSONArray seriesArray=jsonDate.getJSONArray("series");得到series节点,不懂得看Log打印就清楚了 Log.e("seriesArray","="+seriesArray); List<Series> listSeries=JSON.parseArray(seriesArray.toString(),Series.class); for(Series series:listSeries){ Log.e("series.getId","="+series.getId()); Log.e("series.getType","="+series.getType()); Log.e("series.getGroupId","="+series.getGroupId()); Log.e("series.getHorizonal","="+series.getHorizonal()); Log.e("series.getPercentage","="+series.getPercentage()); Log.e("series.getStackType","="+series.getStackType()); Log.e("series.getyAxis","="+series.getYAxis()); } JSONArray toolsArray=jsonDate.getJSONArray("tools");得到tools节点 List<Tools> listTools=JSON.parseArray(toolsArray.toString(),Tools.class); for(Tools tools:listTools){ Log.e("tools.getType","="+tools.getType()); } } catch (IOException E) { e.printStackTrace(); } return jsonDate; } }</span>
然后写3个工具类:
<span style="font-size:18px;">public class Groupdata { private String id; private List<Series> seriesList=new ArrayList<Series>(); private List<Tools> toolsList=new ArrayList<Tools>(); public String getId() { return id; } public void setId(String id) { this.id = id; } public List<Series> getSeriesList() { return seriesList; } public void setSeriesList(List<Series> seriesList) { this.seriesList = seriesList; } public List<Tools> getToolsList() { return toolsList; } public void setToolsList(List<Tools> toolsList) { this.toolsList = toolsList; } }</span>
<span style="font-size:18px;">public class Series { private String id; private String type; private String groupId; private String horizonal; private String percentage; private String stackType; private String yAxis; public String getYAxis() { return yAxis; } public void setYAxis(String yAxis) { this.yAxis = yAxis; } public String getStackType() { return stackType; } public void setStackType(String stackTypE) { this.stackType = stackType; } public String getPercentage() { return percentage; } public void setPercentage(String percentagE) { this.percentage = percentage; } public String getHorizonal() { return horizonal; } public void setHorizonal(String horizonal) { this.horizonal = horizonal; } public String getGroupId() { return groupId; } public void setGroupId(String groupId) { this.groupId = groupId; } public String getType() { return type; } public void setType(String typE) { this.type = type; } public String getId() { return id; } public void setId(String id) { this.id = id; } }</span>
<span style="font-size:18px;">public class Tools { private String type; public String getType() { return type; } public void setType(String typE) { this.type = type; } }</span>
最后看一下打印的Log,版面问题就只截了一部分的图。希望对大家有帮助!!
以上是大佬教程为你收集整理的fastjson解析本地json数据二全部内容,希望文章能够帮你解决fastjson解析本地json数据二所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。