JSON解析

鸿蒙next json解析 ArkUI 带你玩转 arkts json解析 相信很多同学再开发过程中都会遇到json解析的处理,不管是跟服务端交互 或者是读取本地的json 都会遇到json解析 那么正好今天有空正好讲一下鸿蒙next里面的json解析arkts 里面的提供丰富的api来解析我们的json ,对比其他端来说也是相对比较简单 对于复杂的json 我们可以定义一个 interface 或者一个class 来配合我们的,JSON.parse 来进行解析复杂的json数据 当然这个生成数据模型model 我们团队有开发一个插件,这样也大大方便我们开发。 阅读详情
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;

import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;

import com.example.day14json.bean.People;

public class MainActivity extends Activity {

    List<People> list;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        String jsonStr = getJsonFromAssets("json.txt");
        Log.i("================", jsonStr);
        
        list = new ArrayList<People>();
        
        //使用读取出来的json字符串进行  json解析
        parseJson(jsonStr);
        
        Log.i("=======================", list.toString());
    }

    private void parseJson(String jsonStr) {
        try {
            JSONObject object = new JSONObject(jsonStr);
            JSONArray peopleArray = object.optJSONArray("people");
            for (int i = 0; i < peopleArray.length(); i++) {
                //从数组中过去数据 使用的方法 要根据数组中的数据格式来确定
                //如果数组中是Json对象结构 使用optJSONObject(index)
                //如果数组中是String结构 使用optString(index)
                JSONObject peopleObject = peopleArray.optJSONObject(i);
                String email = peopleObject.optString("email");
                String firstName = peopleObject.optString("firstName");
                String lastName = peopleObject.optString("lastName");
                
                People people = new People(email, firstName, lastName);
                list.add(people);

            }
        } catch (JSONException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

    private String getJsonFromAssets(String fileName) {
        String jsonStr = "";
        //从assets文件夹中   把json.txt中的json字符串读取到内存中
        try {
            InputStream is = getAssets().open(fileName);
            //把输入流中的内容读到内存中
            ByteArrayOutputStream bos = new ByteArrayOutputStream();
            //如果数据输出到了byte数组中  我们可以使用new String("byte数组")转成字符串
            //把数据流中的数据  放入到 输出流中
            int len = -1;
            byte[] buff = new byte[1024];
            while((len = is.read(buff)) != -1){
                bos.write(buff, 0, len);
            }
            //当while循环结束时 所有的数据就写到了输出流中
            //使用字节数组数组输出流得到一个  字节数组
            byte[] byteArray = bos.toByteArray();
            jsonStr = new String(byteArray);
            
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return jsonStr;
    }
    
    

}

Android JSON 解析 在 Android 中,JSON(JavaScript Object Notation)是一种常用的数据交换格式,用于客户端与服务器之间的数据传输。Android 提供了多种方式来处理 JSON 数据,本文章介绍了 Android JSON 解析以及 Gson 的使用,和其他第三方库的说明。 阅读详情

相关推荐

科研作图不发愁:手把手教你用PyMOL给蛋白-DNA互作图‘美颜’(附完整配色与标注方案)

本文详细介绍了如何使用PyMOL对蛋白-DNA互作结构图进行专业美化,包括从PDB文件加载、结构展示与标注、互作位点突出显示到高质量渲染输出的完整流程。通过具体案例(PDB ID:8SSS)演示了锌指结构域区分、关键残基标注和互作距离测量等实用技巧,帮助科研人员制作可直接用于期刊投稿的高质量示意图。

weixin_42523792的博客 552

Json解析后 储存,再解析

/** * 读取文件数据加入到设备数据缓存中 */ private void readJsonData() { AddDeviceListBean deviceData = new Gson().fromJson(JsonUtil.getJsonFromAsset(this, "add_device_list.json"), AddDeviceListBean.class); } if (checkNetState()) { for (int i = 0; i &lt

qq_37142785的博客 328

100G SR4 光模块设计

目前100G SR4 光模块主要采用COB 封装技术,在光电芯片键合(bonding)阶段,首先使用银胶将光芯片、电芯片精准固定在电路板规定位置上,该工序即为元件键合(die bonding);然后采用打线机进行金线键合(wire bonding),完成光模块内部的电气连接。在光路耦合阶段,采用8路阵列透镜组完成光路90°弯折及聚焦,并采用有源耦合的工艺进行光路的最终确认,该设计方案工艺简单、高效,借助全自动贴片机、打线机和耦合台就可实现100G SR4 光模块的大批量生产。

Flyin_Group的博客 1372

android从assets中获取json数据

1.首先是导入json文件2.工具类public class SimulateNetAPI { /** * 获取去最原始的数据信息 * * @return json data */ public static String getOriginalFundData(Context context) { InputStream in

牛仔面包 2748

保姆级教程:用YOLOv5s搞定钢材表面缺陷检测,从数据集NEU-DET到模型部署全流程

本文提供了一份详细的YOLOv5s钢材表面缺陷检测教程,涵盖从NEU-DET数据集处理到模型部署的全流程。针对工业环境中的实际限制,如计算资源有限和标注样本少等问题,提供了优化方案和实用技巧,帮助开发者快速实现高效的钢材缺陷检测系统。

weixin_30568591的博客 464

inferCNV包安装问题及解决办法

InferCNV是一个由broad研究所开发的,利用单细胞转录组数据分析肿瘤细胞拷贝数变异(CNV)的工具。基本思路是在整个基因组范围内,通过计算肿瘤细胞关于参考的“正常”细胞的相对表达,利用滑窗思想对邻近的基因相对表达,计算拷贝数。 先贴一个官方安装说明: 官方infercnv安装说明 安装infercnv包: if (!requireNamespace("BiocManager", quietly = TRUE)) install.packages("BiocManager") BiocManager:

m0_51042606的博客 6803

从本地assets中获取json文件

assets放置位置 public class Day_08_Activity extends AppCompatActivity { private String str; private View view; @Override protected void onCreate(Bundle savedInstanceState) {

qq_40782129的博客 730

Apollo学习笔记(4)坐标系

百度Apollo项目用到了多种坐标系,其中帮助文档提及的坐标系包括: 全球地理坐标系(The Global Geographic coordinate system ) 局部坐标系—东-北-天坐标(The Local Frame – East-North-Up,ENU) 车身坐标系—右-前-天坐标(The Vehicle Frame —Right-Forward-Up,RFU) 车身坐标系—前-左-天坐标(The Vehicle Frame —Front-Left-Up,FLU) 还有一种Frenet坐标

qq_24649627的博客 5798

Android获取assets文件夹下的json数据,并解析!

以前看过这些知识,今天用到的时候,发现自己忘记了,都不知道assets文件夹在哪个目录下。百度了一下,assets目录和java目录是同一个级别的。 我们右击assets目录新建File,起名”dynamic.json”,然后我们在文件中写一些json数据:{"dynamic":[ { "username":"燕潇洒", "createTime":"04-23 13:12",

yanxiaosa的博客 2万+

基于双向GRU LSTM DNN水电站水文数据的每日径流量预测 完整代码+数据 可直接运行

基于双向GRU LSTM DNN水电站水文数据的每日径流量预测 完整代码+数据 可直接运行

1901

redhawk:avgTW maxTW minTW minWC的区别

分析dynamic ir drop报告时会遇到这几个值,avgTW maxTW minTW minWC,如下图。我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?

m0_61544122的博客 691

Android本地和assets中配置文件的使用

Android本地和assets中配置文件的使用 一、将assets中的文件解析为json数据: 工具 public class getJsonFromAssets { public static String getJson(String fileName, Context context) { //将json数据变成字符串 StringBuil...

anwanfei的博客 1869

【OpenFOAM】-olaFlow-算例10-wavemakerTank

采用 Flap和Piston两种方式的动网格进行造波

ou_no的博客 2167

JSON的三种解析方式

JSON的三种解析方式 一、什么是JSON? JSON是一种取代XML的数据结构,和xml相比,它更小巧但描述能力却不差,由于它的小巧所以网络传输数据将减少更多流量从而加快速度。 JSON就是一串字符串 只不过元素会使用特定的符号标注。 {} 双括号表示对象 [] 中括号表示数组 "" 双引号内是属性或值 : 冒号表示后者是前者的值(这个值可以是字符串、数字、也可以是另一个数组或对象...

匆匆那年的专栏 5万+

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Qt构建JSON及解析JSON

一般来讲C++类和对象在java中是无法直接直接使用的,因为压根就不是一个规则。但是他们在内存中都是二进制表示的,所以把C++的类和对象转成二进制再按照java的规则解析这段二进制代码就可以做到C++描述的东西在java中复现了。

a1937194471的博客 5426

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

C#解析JSON

全称“JavaScript Object Notation(JavaScript对象表示法)”,JSON 是存储和交换文本信息的语法。[ {"id" : 2 , "name" : "星河爆破" , "number" : 999 } , {"id" : 3 , "name" : "九星连珠" , "number" : 9 } , {"id" : 4 , "name" : "一语成谶" , "number" : 999 } ]学习JSON基础教程在线JSON解析及格式化验证网站。

weixin_43046974的博客 1万+

JSON解析详解

JSON解析详解 1.定义一串测试JSON { "retCode":0, "retMSg":"成功", "data":[ { "name":"李雷", "id":"001", "score":{ "Chinese":"80", "Math":"95" }, "schoolInfo": [ { "School_name": "清华"

Clozzz的博客 2万+

JavaScript解析JSON对象及JSON字符串

JavaScript解析JSON对象是常用功能之一。此处我们要明确JSON对象和JSON字符串的区别?否则会给我们的解析带来困扰。主要实现如下功能:1、JavaScript解析JSON字符串和JSON对象?2、JavaScript解析JSON数组?3、JavaScript解析来自springboot通过@ResponseBody返回的JSON字符串?4、禁用eval后如何替代eval?JSON对象的本质是一个对象,对象中属性的值可以通过object.name的方式访问。

雾林小妖的博客 1678

Qt解析JSON

Qt解析JSON的类QJsonDocument、QJsonObject、QJsonArray

qq_44723937的博客 3945

Java、JS解析JSON对象、JSON数组

一:利用alibaba.fastjson解析JSONObject、JSONArray package com.test1; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; public class TestJsonArray { public static void main(String[] args) { // json

jike11231的博客 8659

【JSON文件解析】JSON文件

JSON文件是什么? Qt如何解析JSON文件?

wddkxg的博客 3203
下一篇: SharedPreferences
Key_p
博客等级 码龄9年 7粉丝 23原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值