android 解析json数据格式

别再让PyCharm吃光你的C盘!保姆级教程:安全迁移config、plugins和remote sources到D盘 本文提供了一份详细的PyCharm配置与缓存文件迁移指南,帮助开发者将config、plugins和remote sources等占用大量C盘空间的文件安全转移到D盘。通过修改data.properties文件和正确迁移顺序,确保PyCharm功能不受影响,同时释放宝贵的系统盘空间。 阅读详情
json数据格式解析我自己分为两种;

一种是普通的,一种是带有数组形式的;


 

普通形式的:
服务器端返回的json数据格式如下:

{
" userbean " :{ " Uid " : " 100196 " , " Showname " : " \u75af\u72c2\u7684\u7334\u5b50 " , " Avtar " : null , " State " : 1 }}

分析代码如下:

//  TODO 状态处理 500 200 
                 int  res  =   0 ; 
                res 
=  httpClient.execute(httpPost).getStatusLine().getStatusCode(); 
                
if  (res  ==   200 ) { 
                    
/*  
                     * 当返回码为200时,做处理 
                     * 得到服务器端返回json数据,并做处理 
                     * 
*/  
                    HttpResponse httpResponse 
=  httpClient.execute(httpPost); 
                    StringBuilder builder 
=   new  StringBuilder(); 
                    BufferedReader bufferedReader2 
=   new  BufferedReader( 
                            
new  InputStreamReader(httpResponse.getEntity().getContent())); 
                    String str2 
=   "" ; 
                    
for  (String s  =  bufferedReader2.readLine(); s  !=   null ; s  =  bufferedReader2 
                            .readLine()) { 
                        builder.append(s); 
                    } 
                    Log.i(
" cat " ,  " >>>>>> "   +  builder.toString());

JSONObject jsonObject 
=   new  JSONObject(builder.toString()) 
                        .getJSONObject(
" userbean " ); 

                String Uid; 
                String Showname; 
                String Avtar; 
                String State; 

                Uid 
=  jsonObject.getString( " Uid " ); 
                Showname 
=  jsonObject.getString( " Showname " ); 
                Avtar 
=  jsonObject.getString( " Avtar " ); 
                State 
=  jsonObject.getString( " State " );
带数组形式的:
服务器端返回的数据格式为:

{
" calendar " : 
    {
" calendarlist " : 
            [ 
            {
" calendar_id " : " 1705 " , " title " : " (\u4eb2\u5b50)ddssd " , " category_name " : " \u9ed8\u8ba4\u5206\u7c7b " , " showtime " : " 1288927800 " , " endshowtime " : " 1288931400 " , " allDay " : false }, 
            {
" calendar_id " : " 1706 " , " title " : " (\u65c5\u884c) " , " category_name " : " \u9ed8\u8ba4\u5206\u7c7b " , " showtime " : " 1288933200 " , " endshowtime " : " 1288936800 " , " allDay " : false } 
            ] 
    } 
}

分析代码如下:

//  TODO 状态处理 500 200 
                 int  res  =   0 ; 
                res 
=  httpClient.execute(httpPost).getStatusLine().getStatusCode(); 
                
if  (res  ==   200 ) { 
                    
/*  
                     * 当返回码为200时,做处理 
                     * 得到服务器端返回json数据,并做处理 
                     * 
*/  
                    HttpResponse httpResponse 
=  httpClient.execute(httpPost); 
                    StringBuilder builder 
=   new  StringBuilder(); 
                    BufferedReader bufferedReader2 
=   new  BufferedReader( 
                            
new  InputStreamReader(httpResponse.getEntity().getContent())); 
                    String str2 
=   "" ; 
                    
for  (String s  =  bufferedReader2.readLine(); s  !=   null ; s  =  bufferedReader2 
                            .readLine()) { 
                        builder.append(s); 
                    } 
                    Log.i(
" cat " ,  " >>>>>> "   +  builder.toString()); 
                    
/**  
                     * 这里需要分析服务器回传的json格式数据, 
                     
*/  
                    JSONObject jsonObject 
=   new  JSONObject(builder.toString()) 
                            .getJSONObject(
" calendar " ); 
                    JSONArray jsonArray 
=  jsonObject.getJSONArray( " calendarlist " ); 
                    
for ( int  i = 0 ;i < jsonArray.length();i ++ ){ 
                        JSONObject jsonObject2 
=  (JSONObject)jsonArray.opt(i); 
                        CalendarInfo calendarInfo 
=   new  CalendarInfo(); 
                        calendarInfo.setCalendar_id(jsonObject2.getString(
" calendar_id " )); 
                        calendarInfo.setTitle(jsonObject2.getString(
" title " )); 
                        calendarInfo.setCategory_name(jsonObject2.getString(
" category_name " )); 
                        calendarInfo.setShowtime(jsonObject2.getString(
" showtime " )); 
                        calendarInfo.setEndtime(jsonObject2.getString(
" endshowtime " )); 
                        calendarInfo.setAllDay(jsonObject2.getBoolean(
" allDay " )); 
                        calendarInfos.add(calendarInfo); 
                    }

总结,普通形式的只需用JSONObject ,带数组形式的需要使用JSONArray 将其变成一个list。

                                                                                         微天下站长:jSmen_LBG发布

STM32在六轴机械臂实时控制中的选型与分层架构设计 嵌入式实时控制系统中,微控制器的选型直接决定运动控制精度与系统可靠性。其核心在于匹配确定性中断响应、低延迟外设协同与工业协议栈支持等硬性指标。STM32凭借Cortex-M内核的NVIC调度能力、成熟HAL库及CAN FD/高级定时器等专用外设,在机电一体化场景中成为伺服控制中枢的首选。相比ESP32等通用MCU,STM32在硬实时性、EMC认证生态和工业总线兼容性上具备不可替代优势。本文围绕GTB六轴机械臂项目,详解基于STM32F407的硬件抽象层配置、FreeRTOS任务调度、事件队列解耦及闭环控制数 阅读详情

相关推荐

数字IC设计避坑指南:为什么477条net的DRV问题无法修复?解析don‘t touch hierarchy的影响

本文深入解析了数字IC后端实现中,因“don't touch hierarchy”约束导致大量DRV违规(如477条net)无法自动修复的根本原因。文章以Cadence Innovus工具为例,详细阐述了DRV修复机制与设计保护约束的冲突原理,并提供了从日志定位、风险评估到分级解除约束的完整实战策略,帮助工程师有效解决此类设计收敛难题。

hope8的博客 290

[安卓开发]安卓和JAVA在JSONObject中getString方法的差异

目录问题解决方法 问题 安卓和JAVA使用JSONObject中getString方法对于同一个JSON中关于整数型提取不同。 比如:{“result”:0} 在安卓中使用getString方法能正确提取,而在Java中会报JSONObject["result"] not a string. 解决方法 基本上可以确定是安卓和JAVA中JSONObject实现不一致导致的 JAVA中实现:JSONO...

weixin_42715226的博客 542

BUPT软件安全实验三

可以看出栈溢出对程序运行的安全性有很大的威胁,如果不对栈进行保护,只要系统中存在栈溢出漏洞,即可令攻击者通过非正当方法获取操作权限。(6)解决思考题,即:在不修改StackOverrun程序源代码的情况下,构造shellcode,通过JMP ESP的方式实现通过记事本打开shellcode.txt(可使用CreateProcessA或WinExec等API)。查看缓冲区信息,可以看到dest指向地址0x0012FAF0,其为数组的存放起始位置,也就是shellcode注入的起始位置。

7xun's space 1966

JsonObject 的getString方法

   在项目中一直用String s = jsonObject.getString( "s" )来获取字段,突然有一天*******,让他们传json数据全部用string类型,否则如果一会传int一会又是string的话我们安卓端解析容易报类型转换异常。咋一听感觉好像有一定的道理,于是我就把获取的json字符串打印出来,一看确实有的是int有的string。然而奇怪的是,我所有的项目都是用get...

GoodIdea 5万+

UVM自学笔记3——项目之三——从零开始搭建ahb_sramc验证平台

创建如下所示的目录结构: 2.在tb的文件下:顶层的testbench如下:在tb中,第24行的代码将uvm宏相关的内容include进来,第26行的代码把uvm_pkg包导入进来,然后将agent相关的包(ahb_pkg/sram_pkg),testcase相关的包(uvm_ahb_sram_test_pkg)以及env相关的包(uvm_ahb_sram_env_pkg)都导入进来,在第38行和39行将接口以virtual interface的形式配置给ahb_agent和sramc_agent下

ZhangShuHuai11的博客 9477

[ensp报错:USG6000V错误代码45解决方案]

[ensp报错:USG6000V:错误代码45解决] [ensp报错:USG6000V:错误代码45解决] 第一种处理方式: ensp的45错误帮助文档里的解决方法:(这里就不说了,上华为爸爸的图) ensp的45错误:如果你的45错误不是描述的那个,可能是ensp与virtualbox不兼容了。 错误描述:具体表现为在virtualbox里没有vfw_usg的条目,虚拟介质管理器里也没有相应的条目: 就是vfw_usg_vdi这个 这种情况下你把ensp卸载重装多少次都没用,原因在两个软件的兼容

weixin_45456536的博客 3万+

JSONObject #getString(String string) 空值(null)问题

今天在android1.6平台上做Json数据解析的时候碰到了这样一个问题: 返回的数据为:{"message":null} 当使用:JSONObject jsonObj = new JSONObject(jsonMessage); String message=jsonObj.getString("message"); 本以为message 是空值(null) 结果

mingming_vip的专栏 2万+

WPF的基础设施:XAML基础语法

XAML是WPF的核心标记语言,采用XML语法实现界面与逻辑分离。其基础语法包括:1)控件声明方式(特性语法和属性元素语法);2)x:Name与Name的区别(适用范围和编译行为);3)注释规范与代码折叠技巧;4)实用特性如属性继承、附加属性等。文章还提供了常见错误排查方法,建议通过实践练习掌握XAML开发技巧。全文系统介绍了XAML的核心语法与应用场景,是WPF开发者的基础学习指南。

Hare的博客 1756

JSONObject中的get与getString

net.sf.json包中的JSONObject方法: private boolean nullObject; private Map properties; public Object get(String key) { this.verifyIsNull(); return this.properties.get(key);...

u011277123的博客 1万+

人工智能面试总结-分类与聚类

目录说说常用的分类算法,以及各自的优缺点?说说为什么正确率有时不能有效评估分类算法?说说什么样的分类器最好?说说聚类算法有哪些衡量标准?(选看)各聚类算法性能比较汇总说说什么是聚类,你知道哪些聚类算法?具体展开介绍你知道的聚类算法?说说K-Means聚类算法流程?说说K-Means聚类算法如何调优?说说K-Means聚类算法如何选择初始点?说说K-Means聚类聚的是特征还是样本?说说K-Means聚类的特征距离是如何计算的?说说聚类与分类的区别?手撕K-Means聚类 说说常用的分类算法,以及各自的优缺点

啥都生的博客 3863

【AI测试干货】软件测试 - 全流程提示词完整体系

本篇教程是一套专为软件测试工程师打造的 AI 协作提示词体系。从测试计划制定、用例设计、自动化脚本开发、缺陷管理,到测试报告生成,每个环节都提供了结构化的提示词模板,帮助测试人员高效利用 AI 提升工作质量。

blues_C的博客 347

android 解析接收数据格式,Android JSON数据格式解析

给服务端发送请求后,服务端会返回一连串的数据,这些数据在大部分情况下都是XML格式或者JSON格式。然后JSON相对XML来说解析相对方便一些,所以先说说JSON的解析。JSON的基本数据格式有这几种:1.一个JSON对象——JSONObject{"name":"胡小威" , "age":20 , "male":true}2.一个JSON数组——JSONArray[{"name":"胡小威" , ...

weixin_32133403的博客 238

使用GitLab的VS Code插件 GitLab Workflow 来进行项目的DevOps管理,助力研发效能

使用VS Code的GitLab Workflow插件,进行项目的DevOps管理,将效率提升到MAX。直接在VScode中管理流水线,一键跳转到创建 Issues,MR

知无涯 5292

【Android开发经验】Json数据格式介绍、使用Android自带类库完成Json生成与解析

初识json

qq_29443203的博客 499

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Android学习系列(20)-App数据格式之解析Json

JSON数据格式,在Android中被广泛运用于客户端和网络(或者说服务器)通信,非常有必要系统的了解学习。     恰逢本人最近对json做了一个简单的学习,特此总结一下,以飨各位。     为了文章简明清晰,尽量多列点,少废话。     参考文档:http://www.ietf.org/rfc/rfc4627.txt?number=4627 1.JSON解析     (1).解析Object...

java 252

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

Android-App数据格式之解析Json

JSON数据格式,在Android中被广泛运用于客户端和网络(或者说服务器)通信,非常有必要系统的了解学习。      恰逢本人最近对json做了一个简单的学习,特此总结一下,以飨各位。      为了文章简明清晰,尽量多列点,少废话。      参考文档:http://www.ietf.org/rfc/rfc4627.txt?number=4627 1.JSON解析      (1).

chaozhung的专栏 1171

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

Android数据格式解析对象JSON用法

1.JSON概念:        一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性,从而可以在不同平台间进行数据交换。JSON采用兼容性很高的文本格式,同时也具备类似于C语言体系的行为。         JSON可以将Java对象转成json格式的字符串,可以将json字符串转换成Java。比XML更轻量级,Json使用起来比较轻便和简单。JSON数据格式,在Android

晓月清松 959

Android数据格式之解析Json

JSON数据格式,在Android中被广泛运用于客户端和网络(或者说服务器)通信,非常有必要系统的了解学习。      恰逢本人最近对json做了一个简单的学习,特此总结一下,以飨各位。      为了文章简明清晰,尽量多列点,少废话。      参考文档:http://www.ietf.org/rfc/rfc4627.txt?number=4627 1.JSON解析      (1

期待 905

Android学习系列(20)--App数据格式之解析Json

JSON数据格式,在Android中被广泛运用于客户端和网络(或者说服务器)通信,非常有必要系统的了解学习。      恰逢本人最近对json做了一个简单的学习,特此总结一下,以飨各位。      为了文章简明清晰,尽量多列点,少废话。      参考文档:http://www.ietf.org/rfc/rfc4627.txt?number=4627 1.JSON解析      (1).

csj070481022的专栏 460

【Android】JSON的具体使用方法之数据格式,数据解析,GSON的使用

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人类阅读和编写,同时也易于机器解析和生成。在你的Activity或Fragment中使用Gson进行JSON序列化和反序列化。键是字符串,值可以是字符串、数字、对象、数组、布尔值或null。:一个无序的键值对集合,键必须是字符串,值可以是任何合法的JSON数据。注解允许你指定JSON中的字段名称与Java对象中的字段名称之间的映射。:一个有序的值列表,值可以是任何合法的JSON数据。包围,包含一个有序的值列表。

Patrick_yuxuan的博客 1730

android json格式解析,android之解析json数据格式详解

1.JSON解析(1).解析Object之一:解析方法:1JSONObject demoJson =newJSONObject(jsonString);2String url = demoJson.getString("url");(2).解析Object之二:1{"name":"android","name":"iphone"}解析方法:1JSONObject demoJson =newJSON...

weixin_35663718的博客 1628

Json数据格式介绍、使用Android自带类库完成Json生成与解析

http://blog.youkuaiyun.com/zhaokaiqiang1992/article/details/41513367 Json数据格式介绍、使用Android自带类库完成Json生成与解析 标签: android开发jsongson 2014-11-26 14:23 2918人阅读 评论(4) 收藏 举报  分类: An

u011904605的博客 354
上一篇: 2015.1.8,第五节课Android SQLite数据库的操作
下一篇: 2015.1.9,第六次课Android对服务端数据进行json解析
JSmen_LBG
博客等级 码龄12年 2粉丝 21原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值