- 浏览: 47432 次
- 性别:
- 来自: 江西
最新评论
<!-- @page { margin: 2cm } PRE.cjk { font-family: "Droid Sans Fallback", monospace } PRE.ctl { font-family: "Lohit Hindi", monospace } P { margin-bottom: 0.21cm } CODE.cjk { font-family: "Droid Sans Fallback", monospace } CODE.ctl { font-family: "Lohit Hindi", monospace } A:link { so-language: zxx } -->
org.json 包中含有类JSONArray/JSONObject/JSONStringer/JSONTokener/JSONException 五个类
-
.JSONArray 一个值序列的集合
-
JSONObject 一个可变值的键值对
-
JSONStringer 重写里toString 方法
-
JSONTokener 解析json 编码的字符串为对应的对象
-
JSONException JSON 中的异常
JSONTokener 中常用的方法是:构造函数和nextValue()
ex:
String json = "{" + " \"query\": \"Pizza\", " + " \"locations\": [ 94043, 90210 ] " + "}"; JSONObject object = (JSONObject) new JSONTokener(json).nextValue(); String query = object.getString("query"); JSONArray locations = object.getJSONArray("locations"); public JSONTokener (S tring in) 构造函数,参数in 是json 格式的字符才,如果参数为空则会抛出NullPointerExceptions
异常
public Object nextValue ()
获得构造函数中参数的下一个字符,该方法根据这个字符决定返回一个对象和是一个数组等等,源码如下:
public
Object nextValue()
throws
JSONException {
int c = nextCleanInternal();
switch (c) {
case -1:
throw syntaxError( "End of input" );
case '{' :
return readObject();
case '[' :
return readArray();
case '\'' :
case '"' :
return nextString(( char ) c);
default :
pos --;
return readLiteral();
}
}
JSONObject 类
一个可变的键值对集合,键是唯一的/ 不能为空的字符串。值可以是多种类型,如:JSONObject/ JSONArray / String /Booleans / Integers /Longs / Doubles 或者 NULL 。值不能是除此之外的其他类型。
当被请求的时该类可以将类型转换成其他的类型。
1. 当被请求的类型是boolean ,字符串可以强制转换成“true” 或者”false”
String s = "false" ;
Boolean B = new Boolean(s);
查看 Boolean 类的源代码可以知道原理。 s 为“ true”( 不区分大小写 ) 时 B 为 true 否则都为 false,
2. 当请求的类型为 double 可以用 doubleValues(), 字符串用 valueOf(String) 转换。
int long 都是类似的方法
3. 当请求的类型所 String, 非空值可以通过 valueOf(Object)
String.valueOf(Object)
注意:这个类有两种表达 null 的方式,一个是 java 标准的 null, 另一个是这个类中的常量值 NULL 。特别的,
调用 put(name,null) 来删除 name 对应的值,但是调用 put(name,JSONObject.NULL) 来保存一个键值对的值为 JSONObject.NULL
JSONObject accumulate (String name, Object value)
在已经存在的 name 键中追加 value 值。
getType(name) 如果没有对应的 value ,或者 value 值不能强制转换 成请求的类型,则会抛出 JSONException 异常。
optType(name) 如果没有对应的 value, 或者 value 不能强制转换成请求的类型,则返回系统的或者用户支持默认的数据类型。
JSONArray 类
实现原理是通过一个 List<Objcet> 保存 values。
其他解释的链接:http://3688429.blog.51cto.com/3678429/682956
发表评论
-
(转)android开发:ImageView中android:scaleType属性的作用
2012-12-06 10:50 779设置图片的填充方式。其值有:matrix、fitXY、fitS ... -
(转)对AttributeSet和defStyle的理解
2012-10-18 13:15 862原文链接:http://blog.c ... -
myclipse+svn+android,svn签出android项目没有R.java文件解决办法
2012-09-10 13:31 2976svn上签出的android项目通常是没有R.java文件的。 ... -
SlidingDrawer空间 抽屉效果实现
2012-08-27 17:50 948<!-- @pa ... -
异步任务类AsyncTask下分析
2012-08-26 18:06 1510<!-- @pa ... -
JNI的基本语法
2012-08-13 14:42 4699JNI的类型 1、基本数据类型 以下是java的基本 ... -
JNI中的本地方法添加调试信息
2012-08-12 14:16 9761、在c文件中添加头文件 #include <andro ... -
android JNI 入门
2012-08-11 16:33 1087我在测试JNI时,如下进行: 1、创建一个and ... -
ubuntu 12.04 x86-64 安装支持32位的库
2012-08-03 13:56 9102在64位的linux下搭建android环境时 ,需要安装支持 ... -
getApplication()和getApplicationContext()
2012-07-27 10:29 2021关于android中的应用程序的全局变量的使用Applicat ... -
对自定义一个列表适配器实现的理解
2011-08-22 13:45 987自定义一个列表适配器 经过一个简单的 例子,我觉得 ... -
LayoutInflater初识
2011-08-19 11:00 1306从LayoutInflater的API的介绍中可以知道, ... -
删除模拟器里的应用程序
2011-07-18 19:01 908一、在命令提示符下输入命令: 打开模拟器界面,同时在 ...
相关推荐
"android-json-rpc"正是这样一款专为Android平台设计的JSON-RPC库,它简化了开发者在Android应用程序中执行JSON-RPC服务调用的过程。 该库的核心特性包括: 1. **简单易用的API**:android-json-rpc提供了一个直观...
在早期的Android版本中,开发者通常需要手动导入这个jar包,而现在的新版本Android Studio中,org.json库已被集成到Android SDK中,可以直接使用无需额外引入。 在Android开发中,我们经常会遇到以下几种使用JSON的...
赠送jar包:android-json-0.0.20131108.vaadin1.jar; 赠送原API文档:android-json-0.0.20131108.vaadin1-javadoc.jar; 赠送源代码:android-json-0.0.20131108.vaadin1-sources.jar; 赠送Maven依赖信息文件:...
在Android开发中,为了提升应用中的动画效果和性能,开发者经常使用Adobe After Effects(简称AE)来设计复杂的视觉效果,并将其导出为JSON文件。这种做法可以借助Lottie-Android库,让Android应用能够轻松地读取并...
在Android开发中,JSON(JavaScript Object Notation)是一种常用的数据交换格式,因其轻量级、易读易写的特点,被广泛应用于服务器与客户端之间的数据通信。本教程将深入讲解如何在Android环境中构建JSON数据。 ...
Android提供了多种工具来解析和构造JSON数据,这些工具主要位于`org.json`包下。 首先,我们来看`JSONObject`,它是JSON对象的基础。一个`JSONObject`可以被视为键值对的集合,每个键都是一个字符串,每个值可以是...
在Android开发中,JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它使得人和机器都能容易地读取和编写数据。由于其简洁和高效,JSON已经成为网络上最常用的数据交换格式之一,尤其在移动应用开发...
赠送jar包:android-json-0.0.20131108.vaadin1.jar; 赠送原API文档:android-json-0.0.20131108.vaadin1-javadoc.jar; 赠送源代码:android-json-0.0.20131108.vaadin1-sources.jar; 赠送Maven依赖信息文件:...
标题“Android json解析jar包”指的是在Android应用中使用特定的jar包来处理JSON数据。在Java和Android开发中,解析JSON数据通常需要引入外部库,比如Gson,因为Android SDK本身并没有内置高级的JSON解析功能。 ...
在Android开发中,JSON(JavaScript Object Notation)是一种常用的数据交换格式,因其简洁、易读、易编写的特点,被广泛应用于服务器与客户端之间的数据传输。本篇将详细讲解如何在Android应用中解析JSON数据,主要...
然后,这个字符串将在`handleJsonData`方法中被解析为JSON,以便在Android端进行处理。 需要注意的是,虽然这种方法方便快捷,但JSON数据的安全性和有效性需要开发者自行验证。此外,由于JavaScript和Android是两个...
在Android开发中,JSON扮演着重要角色,允许不同平台之间进行数据传输。JSON的结构主要由两种基本元素构成:Name/Value对(无序的)和Array(有序的)。 Name/Value对类似于哈希表或关联数组,由键值对组成,没有...
在Android开发中,JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它使得人和机器都能容易地读取和编写数据。本教程聚焦于老罗讲解的Android解析JSON数据的源码分析,这对于深入理解JSON处理以及...
在Android开发中,JSON(JavaScript Object Notation)是一种常见的数据交换格式,用于在客户端与服务器之间传输数据。本文将深入探讨如何在Android应用中读取并解析JSON数据,并将其显示在TextView上。我们将使用...
Java和Android平台都提供了内置的JSON处理库,如Java的`org.json`包和Android的`org.json`或Gson库。这些库允许开发者将Java对象转换为JSON字符串,反之亦然。然而,它们并不提供直观的格式化功能,这就是"Json...
1. 从字符串解析:Android提供了`org.json`包,可以使用`JSONObject`的`JSONObject(String json)`构造方法将JSON格式的字符串转换为`JSONObject`,同理,可以使用`JSONArray(String json)`来解析JSON数组。...
在Android Studio中解析JSON,通常使用的是`org.json`库,它包含两个主要类:`JSONObject`和`JSONArray`。`JSONObject`用于处理键值对,而`JSONArray`则处理有序的元素列表。 解析JSON对象的步骤如下: 1. **导...
Android的JSON示例 一、运行环境: 1.服务器端为ASP+Access2003+IIS 2.移动端为Android2.1(大家可根据需要自行调整API Level) 二、主要功能: 1.移动端通过Button将EditText内容提交Request给服务器端 (示例为记录...
在Android应用开发中,处理JSON数据是常见的任务。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,因其简洁和易于人阅读及编写的特点,被广泛用于服务器向客户端传输数据。本文将深入探讨如何在...
总结,Android中的JSON解析包括本地和在线两种方式,都可以使用Android SDK内置的`org.json`包。在实际开发中,根据项目需求,可以选择最合适的解析策略,并确保正确处理各种异常情况,提升用户体验。