android中的json的读取

1.读取Json文件中的json内容

首先在将json文件放在目录assets下:

test.json

{"programmers":[{"firstName":"Brett","lastName":"McLaughlin","email":"aaaa"},
{"firstName":"Jason","lastName":"Hunter","email":"bbbb"},
{"firstName":"Elliotte","lastName":"Harold","email":"cccc"}
],
"authors":[
{"firstName":"Isaac","lastName":"Asimov","genre":"sciencefiction"},
{"firstName":"Tad","lastName":"Williams","genre":"fantasy"},
{"firstName":"Frank","lastName":"Peretti","genre":"christianfiction"}
],
"musicians":[
{"firstName":"Eric","lastName":"Clapton","instrument":"guitar"},
{"firstName":"Sergei","lastName":"Rachmaninoff","instrument":"piano"}
],
"cat":"test"}

在main.java中读取

 try {InputStreamReader isr=new InputStreamReader(getAssets().open("test.json"),"UTF-8");//打开test.jsonBufferedReader br=new BufferedReader(isr);//读取isrString line;StringBuilder builder=new StringBuilder();while ((line =br.readLine())!=null){builder.append(line);}br.close();isr.close();JSONObject root=new JSONObject(builder.toString());System.out.println(root.getString("cat"));JSONArray arry=root.getJSONArray("programmers");for (int i=0;i<arry.length();i++){JSONObject lan=arry.getJSONObject(i);System.out.println("----------------");System.out.println("firstName:"+lan.getString("firstName"));System.out.println("lastName:"+lan.getString("lastName"));System.out.println("email"+lan.getString("email"));}} catch (IOException e) {e.printStackTrace();Log.e("IO:" , e.toString());} catch (JSONException e) {e.printStackTrace();Log.e("JSON:", e.toString());}

显示结果:

如要读取给定Json数据:

可直接将值附上


 JSONObject root1=new JSONObject();try {root1.put("cat","it");JSONObject lan1=new JSONObject();lan1.put("id",1);lan1.put("ide","android");lan1.put("name","java");JSONObject lan2=new JSONObject();lan1.put("id",2);lan1.put("ide","xcod");lan1.put("name","ios");JSONObject lan3=new JSONObject();lan1.put("id",3);lan1.put("ide","vs");lan1.put("name","C#");JSONArray array=new JSONArray();array.put(lan1);array.put(lan2);array.put(lan3);root1.put("programmers",array);System.out.println(root1.toString());} catch (JSONException e) {e.printStackTrace();}}

显示结果:
//JSONObject root=new JSONObject(builder.toString());换成-》JSONObject root=new JSONObject("{'programmers':[{'firstName':'Brett','lastName':'McLaughlin','email':'aaaa'}]}");
2.创建JSON格式数据

源码下载: http://download.csdn.net/detail/agonie201218/8657765

android中的json二之json的读写相关推荐

  1. Java IO在Android中应用(二):APK加固

    Java I/O在Android中应用(二):APK加固套壳 前言(废话) 我,有两把键盘,第一把是Poker III(黑轴),第二把是Poker II(红轴).工作的时候我常用的是红轴的Poker ...

  2. Android中 自定义logo二维码绘制(仿微信QQ二维码)

    自定义Logo二维码绘制(追加上一篇简单二维码绘制) 1.实现思路 2.实现(新增拍照以及相册上传logo以及分享和保存二维码) 简单绘制二维码地址: Android 实现简单绘制二维码(包含带LOG ...

  3. android中解析后台返回的json字符串

    普通形式的: 服务器端返回的json数据格式如下: {"userbean":{"Uid":"100196","Showname&q ...

  4. Android中可通过二维码扫描,直接显示个人名片信息,而且可以点击添加,调用系统的添加联系人功能

    微信小程序出来后,出来了一个快速发名片的小程序,他会根据用户的信息生成一张二维码图片,用户扫描之后,就会读取二维码里面的数据,之后调用系统的名片展示界面,之后就可以添加联系人了.开始看到时,还挺好奇的 ...

  5. RxJava 在Android中的应用(二)

    RxJava的事件序列 Observable.create() //创建observable被观察者Observable.create(new Observable.OnSubscribe<St ...

  6. Android中的JSON详细总结

    1.JSON(JavaScript Object Notation) 定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.业内主流技术为其提供了完整的解决方案(有点类似于正则表达式, ...

  7. Android中解析JSON形式的数据

    转自:http://shazhuzhu1.iteye.com/blog/974758 1.JSON(JavaScript Object Notation) 定义: 一种轻量级的数据交换格式,具有良好的 ...

  8. Android中Json数据解析

    Android学习系列(20)--App数据格式之解析Json (很基本基础的入门,对json的基础讲的很好) http://my.eoe.cn/874311/archive/1936.html An ...

  9. android中json解析及使用 (下)

    接上文 七.通过JSONTokener来解析json文本 7.1.将json文本解析为对象 我们可以通过JSONTokener的nextValue()来获得JSONObject对象,然后再通过JSON ...

最新文章

  1. MySQL常用性能分析方法-profile,explain,索引
  2. python file does not exist_python – os.path.exists()的谎言
  3. 2018最具就业前景的7大编程语言,Java、Python和JavaScript?
  4. openstack nova 源码解析 — Nova API 执行过程从(novaclient到Action)
  5. GB28181协议中的事件系统设计
  6. php eval 安全性,php – 使用eval解析表单输入的方程式的最安全的方法
  7. 【Qt教程】1.9 - Qt5菜单栏、工具栏、状态栏、核心窗口、浮动窗口、QMainWindow
  8. leetcode 148. Sort List ----- java
  9. 使用 WinRAR 将bat转exe
  10. 深度学习AI美颜系列---美图秀秀AI美图之跨次元相机特效
  11. 1月好书推荐-8本值得读的好书,让你受益终生
  12. 传奇高手的一天(笑话)
  13. RGB转HSI的代码优化
  14. 机器学习——聚类分析
  15. intelliJ IDEA启用快速定位文件图标
  16. Lambda表达式和Stream流
  17. vscode 下载慢解决方法
  18. HTML编辑器选择什么,HTML编辑器有哪些?3款常用的编辑器推荐
  19. MPP架构是什么?看这一篇就行了。。
  20. 聊聊浏览器的标准模式和怪异模式

热门文章

  1. NBT:MaPS-seq测序方法揭示肠道微生物空间分布
  2. 宏基因组QIIME2专题讨论群
  3. 微生物组——宏基因组分析专题培训开课啦!!!
  4. Python使用matplotlib可视化散点图、使用seaborn中的lmplot函数可视化不同分组散点图的最优线性回归拟合曲线(Scatter plot with regression line)
  5. R语言使用caret包的preProcess函数进行数据预处理:对所有的数据列进行SpatialSign变换(将数据投影到单位圆之内)、设置method参数为spatialSign
  6. python使用matplotlib可视化使用subplots子图、subplots绘制子图、并为可视化的每个子图添加标题(title for each subplots)
  7. R语言使用ggplot2包使用geom_boxplot函数绘制基础分组箱图(配置数据点显示)实战
  8. R语言nrow函数获取dataframe或者matrix行计数统计
  9. 生成对抗网络是什么?
  10. 什么是迁移学习?迁移学习的超参数有哪些?