安卓中json数据的读取
创始人
2025-05-30 04:01:08
0

安卓中json数据的读取

1.采用org.json读取的方式

1.1创建assets文件夹

1.创建assests文件夹

直接下一步

 

1.2创建过程

1.创建json测试文件

{"studnet":[{"id":1,"name":"张三","age":20},{"id":2,"name":"李思","age":21},{"id":3,"name":"王五","age":22}],"college":"山东xx大学"
}

2.读取数据

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;import org.json.JSONArray;
import org.json.JSONObject;import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);//读取json文件try{//获取assests文件夹下的内容InputStreamReader in=new InputStreamReader(getAssets().open("test.json"),"UTF-8");System.out.println("获取输入流");//读取文件的信息BufferedReader br=new BufferedReader(in);String line="";StringBuffer builder=new StringBuffer();while ((line=br.readLine())!=null){builder.append(line);}//可以获取一个字符串对象JSONObject obj=new JSONObject(builder.toString());//获取json数据String object=obj.getString("college");System.out.println("获取的json数据college"+object);//获取数组数据JSONArray array=obj.getJSONArray("student");//打印json数组的信息System.out.println("获取的json数据"+array);//获取数组中的对象信息System.out.println("获取的json数据"+array.get(0));System.out.println("获取的json数据"+array.get(1));System.out.println("获取的json数据"+array.get(2));//获取数组中的对象中的信息System.out.println("获取的json数据"+new JSONObject(array.get(0).toString()).getString("id"));System.out.println("获取的json数据"+new JSONObject(array.get(0).toString()).getString("name"));System.out.println("获取的json数据"+new JSONObject(array.get(0).toString()).getString("age"));}catch (Exception e){System.out.println("出现错误:"+e);}}
}

3.效果图

2.采用GSON读取的方式

2.1Java模块的创建

1.创建Java程序

默认的名称

生成的程序和原先的模块是并列的关系

2.编写Java程序

2.2Java的设置

1.jdk的设置

 

2.增加application的运行

 3.选中刚刚创建的进行编译运行

2.3采用GSON的方式

1.选中

f7375427cb15e47f156e3b84db06d09c.png

2.找到刚刚创建的lib

3.引入对应的库函数

  • 选中GSON

依赖的包会自动的加入的。

解析的代码

public class MyClass {public static void main(String[] args) {try {System.out.println("hello");
//        定义一个json的解析器JsonParser parser=new JsonParser();FileReader reader=new FileReader("C:\\Users\\cxl\\Desktop\\food\\k3\\SQL\\jsonread\\src\\main\\assets\\test.json");JsonObject object=(JsonObject) parser.parse(reader);System.out.println("要读取的文件的信息");System.out.println(object.get("college").getAsString());System.out.println( object.get("student").getAsJsonArray());}catch (Exception e){}

 下面将解决编码问题???

相关内容

热门资讯

银行职工因贪污罪获刑后留任,在... 新京报记者 刘锦涵 制作 礼牧周 ▲新京报我们视频出品(ID:wevideo) 近日,农发行福建福鼎...
黄金创40年来最大单日跌幅!金... (来源:劳动报) 转自:劳动报 1月31日,国际金银价格同步大跌,创40余年来最大跌幅。国内金饰价...
“一人公司”近来何以兴起? 2026年开年,“一人公司”发展备受关注。这种新型创业模式正在上海、北京、江苏等地悄然兴起,凭借低成...
寒武纪预计 2025 年净利润... 消息,AI 芯片企业寒武纪今日发布 2025 年年度业绩预告: 经财务部门初步测算,公司预计 2...
和讯投顾徐剑波:ETF买入法! 这轮牛市是机构主导的ETF牛市,选对ETF往往比选股更加赚钱。那么如何投资ETF?今天教给大家一个非...
君乐宝上市申请已递交,国内乳品... 2026年 1月19日,中国领先的综合乳制品企业君乐宝乳业集团股份有限公司正式向香港联交所递交主板上...
大涨!马斯克,突传大消息!重磅... SpaceX的“赚钱能力”曝光。 据最新消息,世界首富埃隆·马斯克旗下的商业航天公司SpaceX去年...
原创 顶... 2025年微博之夜定档于2026年2月5日北京线上直播,这场已经走过二十多年风雨的互联网年度盛典,因...
体检查出肺结节?3个日常行为正... 太原龙城中医医院科普:如今越来越多人在体检中发现肺结节,看到报告上的“阴影”便忧心忡忡。其实研究表明...
记者观察丨美联储下任主席提名揭... 在经过长达一年反复挑选后,美国总统唐纳德·特朗普终于做出决定,提名凯文·沃什为下一任美联储主席,接替...
首饰金,一夜大跌上百元!金价暴... 【导读】多家首饰品牌金价出现大幅下跌 中国基金报记者 忆山 随着国际金价急速下跌,国内首饰金价也迎来...
原创 一... 一个亲自参观过我国稀土提炼工厂的日本人在社交平台发文,竟然毫不客气地指出,无论是日本还是美国,都几乎...
环球网财经系列专访 1月27日至28日,全国贸促工作会议暨中国贸促会第六届全国委员会第六次会议在京召开。 会议指出,“...
默茨警告:“大国世界”要来了,... 【文/观察者网 熊超然】当地时间1月29日,德国总理默茨在德国联邦议院发表其任内的第二次施政声明。在...
路透解析“马斯克集团”:Spa... SpaceX 凤凰网科技讯 北京时间1月31日,据路透社报道,长期以来,埃隆·马斯克(Elon Mu...
启动“二改” 永辉在京完成21... 北京商报讯(记者 赵述评 实习记者 毛思怡)1月31日,永辉超市北京龙湖长楹天街店经一个多月闭店调改...
《宜宾散装白酒连锁经营规范》团... 近日,由宜宾市酒类协会牵头归口、宜宾安宁酒厂主导起草,四川谊宾酒业、宜宾学院、劲牌南溪酒业等多家本地...
印度牙医博士打造全印首款人形机... 2026 年 1 月 23 日,印度浦那的 Muks Robotics 正式宣布,自主研发的社交人形...
金银价创新高,引发全球“贵金属... 【环球时报记者 倪浩 环球时报特约记者 甄翔】连日来,国际市场金银价格持续大涨。1月29日当天,亚太...
财经观察丨“爱你老己”背后的消... 新华网北京1月31日电岁末年初,一句“爱你老己,明天见”席卷社交网络,成为年轻人自我关怀的新表达。热...