android json 解析 简单示例
1 下面是一个简单的json 解析的demo,废话不多说,直接上代码
package com.sky.gallery;
import java.io.ByteArrayOutputStream;
import java.io.DataInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.SocketTimeoutException;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
import org.json.JSONArray;
import org.json.JSONObject;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
public class ctivity extends Activity {
//音乐
private static String GAME_URL = "http://api.k.sohu.com/api/photos/list.go?rt=json&categoryId=2&pageSize=4&p1=NTc1MzY0OTc2NzAxNjA0MjUyMw%3D%3D";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_activity);
startGetGameListThread();
}
public void startGetGameListThread() {
new Thread() {
@Override
public void run() {
String jsonStr = null;
int errorCode = 0;
try { // 读取数据 j
jsonStr = getGameJsonStr(GAME_URL);
Log.i("test", "jsonStr = " + jsonStr);
//parseAppList(jsonStr);
} catch (Exception e) {
e.printStackTrace();
errorCode = 1;
} finally {
}
}
}.start();
}
private static String getGameJsonStr(String url) throws Exception {
Log.i("test", "getGameJsonStr(). url = " + url);
String jsonStr = null;
final HttpParams httpParameters = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParameters, 6000);
HttpConnectionParams.setSoTimeout(httpParameters, 6000);
final DefaultHttpClient client = new DefaultHttpClient(httpParameters);
final HttpGet get = new HttpGet(url);
HttpResponse resp;
resp = client.execute(get);
final HttpEntity entity = resp.getEntity();
final InputStream is = entity.getContent();
jsonStr = readToEnd(is);
is.close();
return jsonStr;
}
private static String readToEnd(InputStream input) throws IOException,
SocketTimeoutException {
final DataInputStream dis = new DataInputStream(input);
final byte[] stuff = new byte[1024];
final ByteArrayOutputStream buff = new ByteArrayOutputStream();
int read = 0;
while ((read = dis.read(stuff)) != -1) {
buff.write(stuff, 0, read);
}
return new String(buff.toByteArray());
}
private static void log(String msg) {
Log.v("test", msg);
}
private void parseAppList(String jsonStr) throws Exception {
Log.v("test", "sssssssssssssssssssssssssssssssss");
try {
/*
* final JSONObject root = new JSONObject(jsonStr); Log.i("test",
* "root = " + root);
*/
JSONObject oo = new JSONObject(jsonStr);
JSONArray array = oo.getJSONArray("videos");
//final JSONArray array = new JSONArray(jsonStr);
for (int i = 0; i < 20; ++i) {
//JSONObject obj = array.getJSONObject(i);
AppModle one = addOneGameModel(array.getJSONObject(i));
Log.i("test", "每一个对象的 "+i+" "+one.getTitle());
Log.i("test", "每一个对象的 "+i+" "+one.getId());
Log.i("test", "每一个对象的 "+i+" "+one.getArtistName());
}
} catch (Exception e) {
e.printStackTrace();
}
}
private static AppModle addOneGameModel(JSONObject game) throws Exception {
AppModle one = new AppModle();
/*
one.setId(game.getInt("id"));
one.setTitle(game.getString("title"));
one.setArtistName(game.getString("artistName"));*/
return one;
}
}
android json 解析 简单示例的更多相关文章
- android json 解析简单实例
Android JSON解析跟JAVA 的JSON解析原理是一样的. Android自带的JSON方式跟方便,不需要导包啥的.不深究原理了,直接上代码: public class JsonActivi ...
- android json解析及简单例子+Android与服务器端数据交互+Android精彩案例【申明:来源于网络】
android json解析及简单例子+Android与服务器端数据交互+Android精彩案例[申明:来源于网络] android json解析及简单例子:http://www.open-open. ...
- Android JSON解析库Gson和Fast-json的使用对比和图书列表小案例
Android JSON解析库Gson和Fast-json的使用对比和图书列表小案例 继上篇json解析,我用了原生的json解析,但是在有些情况下我们不得不承认,一些优秀的json解析框架确实十分的 ...
- Android Json解析与总结
一.JSON定义 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式. 易于人阅读和编写.同时也易于机器解析和生成. 它基于JavaScript Progra ...
- Android JSON 解析关键代码
Android Json 解析其实还是蛮重要的知识点,为什么这么说呢,因为安卓通信大部分的协议都是使用 json 的方式传输,我知道以前大部分是使用的 xml ,但是时代在发展社会在进步,json 成 ...
- android json解析及简单例子
JSON的定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得了当今大部分语言的支持),从而可以在不同平台间进行数据 ...
- 【转】android json解析及简单例子
JSON的定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得了当今大部分语言的支持),从而可以在不同平台间进行数据 ...
- Android JSON解析插件
JSON是一种轻量级的数据格式,用于数据的交互. Android交互数据主要两种方式:JSON和 XML.XML格式比JSON格式数量略大,所以大多都使用Json数据格式. 在Android开发的过程 ...
- android json解析详细介绍之gson
废话不多说,什么json是轻量级数据交换标准:自己百度去深入了解:这里有三种json解析工具.本人只用过其中两种: 1.Google Json利器之Gson 评价:简单,方便. 2.阿里巴巴 ...
随机推荐
- awk内置变量 awk有许多内置变量用来设置环境信息,这些变量可以被改变,下面给出了最常用的一些变量。
ARGC 命令行参数个数 ARGV 命令行参数排列 ENVIRON 支持队列中系统环境变量的使用 FILENAME awk浏览的文件名 FNR 浏览文件的记录数 FS 设置输入域分隔符,等价于命令行 ...
- centos7安装codeblocks教程
author:lidabo 装了好多次系统,每次装的时候都有要在网上各种查,太麻烦了.所以决定记录一下,以后用到的时候会方便一些.当然,本文来源于网络,取百家之长,最重要的是本人已验证过,说明对本系统 ...
- MySQL主键添加/删除
2改动数据库和表的字符集alter database maildb default character set utf8;//改动数据库的字符集alter table mailtable defaul ...
- 数据绑定以及Container.DataItem几种方式与使用方法分析
灵活的运用数据绑定操作 绑定到简单属性:<%#UserName%> 绑定到集合:<asp:ListBox id="ListBox1" ...
- while和do while习题
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 练习 { ...
- PHP - 计算执行程序耗时
效果: 首先在includes文件夹下编写,global.func.php函数库: <?php /* * Version:1.0 * CreateTime:2015年11月11日 * Autho ...
- 分享最新15个加速 Web 开发的框架和工具(梦想天空)
我们为开发人员挑选了15个最新的 Web 开发框架,你肯定尝试一下这些新鲜的框架,有的可能略微复杂,有的提供了很多的配置选项,也有一些窗口小部件和界面交互的选择.他们将帮助你创建更优秀的网站,提供给 ...
- WCF技术剖析之二十一: WCF基本的异常处理模式[上篇]
原文:WCF技术剖析之二十一: WCF基本的异常处理模式[上篇] 由于WCF采用.NET托管语言(C#和NET)作为其主要的编程语言,注定以了基于WCF的编程方式不可能很复杂.同时,WCF设计的一个目 ...
- windows下安装mysql5.6.13的主从复制
如下操作均在vmware 虚拟机中winows xp 测试成功 中间走了很多弯路,网上的很多资料都是针对5.1以前的版本,在新版中根本无法使用,所以根据自己的实践整理了这篇文章 主服务:192.168 ...
- Swift - 添加、修改、删除通讯录联系人
使用AddressBook.framework框架,我们除了可以很方便的获取通信录里的联系人.同时,还能对通讯录进行新增.修改.删除联系人操作. (注意:这些操作同查询一样,首先需要发起授权请求) 1 ...