安卓解析JSON

Json的数据结构

例如:

[

????{????

???????? "authType":"oAuth2" ,

???????? "CAS":"https://auth.bistu.edu.cn" ,

???????? "oAuth2":"https://222.249.250.89:8443" ,

???????? "AndroidUpgrade":"http://m.bistu.edu.cn/upgrade/Android.php" ,

???????? "jwApi":"http://m.bistu.edu.cn/jiaowu" ,

???????? "icampusApi":"http://m.bistu.edu.cn/api" ,

???????? "newsApi":"http://m.bistu.edu.cn/newsapi"

????}

]

在这组数据中,[]中的内容是一个json数组,如果有多个[],那么就有多个json数组;{}中的数据是一个json对象,如果有多个{},那么就表明这个json数组中有多个json对象;一个对象中有多个键值对,冒号前面的是键,冒号后面的是值,不同的键值对之间用,分隔开

?

Json的解析

SecondActivity.java

package com.ahtcfg24;

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
import com.loopj.android.http.AsyncHttpClient;
import com.loopj.android.http.AsyncHttpResponseHandler;
import org.apache.http.Header;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

/**
* Created by ahtcfg24 on 2015/4/12.
*/
public class SecondActivity extends Activity
{
private TextView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.layout);

textView = (TextView) findViewById(R.id.textView2);

AsyncHttpClient client = new AsyncHttpClient();
client.get("http://m.bistu.edu.cn/icampus_config.json", null, new AsyncHttpResponseHandler() {
@Override
public void onFailure(int arg0, Header[] arg1, byte[] arg2,
Throwable arg3) {
}

@Override
public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) {
/*把从网址中获得的json数数据由byte数组转换为字符串格式*/
String data = new String(responseBody);
System.out.println("这是字符串"+data);/*调试*/
try {
/*JSONArray的构造方法就是将字符串中的数组拿出来并放到JSONArray中*/
JSONArray
= new JSONArray(data);
System.out.println("这是JSON数组的第一个元素"+jsonArray.getJSONObject(0));
/*将数组中的第一元素(第一个JSON对象提取出来,赋给一个JSONobject,这样这个JSONobject中就存放着一个json数据)*/
JSONObject
= jsonArray.getJSONObject(0);
/*通过getString方法由键名找到对应的值*/
System.out.println(jsonObject.getString("newsApi"));
textView.setText(jsonObject.getString("newsApi"));
} catch (JSONException e) {
e.printStackTrace();
}
}
});
}
}

?

layout.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="10dp"
android:orientation="vertical">

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="null"

android:textColor="#000000"
android:textSize="50sp"
android:layout_gravity="center"
android:id="@+id/textView2" />

</LinearLayout>

?

时间: 2024-10-13 00:58:18

安卓解析JSON的相关文章

安卓解析json,使用BaseAdapter添加至ListView中,中间存储用JavaBean来实现

这是一个小练习,要求解析一个提供的json文件.并将其中的id,title值获取,以ListView形式展示出来.(开发工具是android studio) 下面开始: 首先我想到的是先把json文件内容读进一个String类型的变量中去保存,然后再对字符串进行解析.Id和title可以看做为一组数据,然后整个文件有很多组数据,所以创建了 1 ArrayList<HashMap> ArrayList=new ArrayList<>(); list中保存所有条数据,需要时再获取.所以

安卓中解析json数据

一.概述 JSON是JavaScript Object Notation的简称,起源于js(javascript)它是一种轻量级的数据交换格式,JSON不仅在js中广泛使用,同时还在其他领域得到广泛使用,如c,c++,java,Php,swift等等,成为了一种通用的理想数据交换格式,它有两种数据结构,分别是对象,数组,它形式上有花括号{}和中括号[]嵌套,{}中的是代表对象,[]中的为数组,即对象中有数组,数组中又有对象,而且以及键/值对出现. json语法: 数据在键值对中 数据有逗号分离

Android解析Json速度最快的库:json-smart

场景描写叙述: 本文仅验证了在安卓环境下使用Json的Key作为反序列化条件的解析速度.结论是解析速度最快的不是阿里的fastjson,也不是Google的Gson,而是json-smart. Android 4.4.2 fastjson-1.1.34.android.jar gson-2.2.4.jar json-smart-2.0-RC3.jar **注意场景的限定条件** 核心代码: package com.h3c.mytestview; import java.io.StringRead

【Android】解析JSON数据详解

Android解析JSON数据详解 JSON(JavaScript Object Notation) 定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.业内主流技术为其提供了完整的解决方案(有点类似于正则表达式,获得了当今大部分语言的支持),从而可以在不同平台间进行数据交换.JSON采用兼容性很高的文本格式,同时也具备类似于C语言体系的行为. – Json.org JSON的结构: (1) Name/Value Pairs(无序的):类似所熟知的Keyed list. Has

毕设三 spark与phoenix集成插入数据/解析json数组

需求:将前些日子采集的评论存储到hbase中 思路: 先用fastjson解析评论,然后构造rdd,最后使用spark与phoenix交互,把数据存储到hbase中 部分数据: 1 [ 2 { 3 "referenceName": "Apple iPhone XR 64GB 黑色 移动联通电信4G全网通手机 双卡双待", 4 "creationTime": "2019-04-08 01:13:42", 5 "cont

利用fastjson解析json并通过js&amp;ajax实现页面的无跳转刷新

1.json是一种优秀的数据格式,在移动开发和web开发中经常用到,本例中通过一个小案例讲解如何通过alibaba的开源框架fastjson来解析jason数据格式并通过js实现无跳转刷新 2,新建一个web项目,这是我的项目:我这里直接用servlet写的 注意导包,我这里到了很多无用的包,其实主要的包是下面几个: 这个三个包是必须的,其他都是开发基本web的常用包 3.创建一个domain: package com.keson.domain; import com.thoughtworks.

android之GSON解析JSON

Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库. 比如: <pre name="code" class="java">public class Order { public String id; public String OrderName; @Override public String toString() { return "id:"+id+",OrderNa

C# 解析 json

C# 解析 json JSON(全称为JavaScript Object Notation) 是一种轻量级的数据交换格式.它是基于JavaScript语法标准的一个子集. JSON采用完全独立于语言的文本格式,可以很容易在各种网络.平台和程序之间传输.JSON的语法很简单,易于人阅读和编写,同时也易于机器解析和生成. JSON与XML的比较◆可读性 JSON和XML的可读性相比较而言,由于XML提供辅助的标签,更加适合人阅读和理解.◆文件大小与传输 XML允许使用方便的标签,所以文件尺寸是要比J

使用QtScript库解析Json数组例子

本文转载自:http://blog.sina.com.cn/s/blog_671732440100uwxh.html 使用qtscipt库解析json数组首先在工程文件中加 QT        += script 然后头文件加 #include <QtScript> 然后解析 QString str = "{\"name\":\"xiaotang\", \"age\":\"23\", \"chi