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 解析 简单示例的更多相关文章

  1. android json 解析简单实例

    Android JSON解析跟JAVA 的JSON解析原理是一样的. Android自带的JSON方式跟方便,不需要导包啥的.不深究原理了,直接上代码: public class JsonActivi ...

  2. android json解析及简单例子+Android与服务器端数据交互+Android精彩案例【申明:来源于网络】

    android json解析及简单例子+Android与服务器端数据交互+Android精彩案例[申明:来源于网络] android json解析及简单例子:http://www.open-open. ...

  3. Android JSON解析库Gson和Fast-json的使用对比和图书列表小案例

    Android JSON解析库Gson和Fast-json的使用对比和图书列表小案例 继上篇json解析,我用了原生的json解析,但是在有些情况下我们不得不承认,一些优秀的json解析框架确实十分的 ...

  4. Android Json解析与总结

    一.JSON定义 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式. 易于人阅读和编写.同时也易于机器解析和生成. 它基于JavaScript Progra ...

  5. Android JSON 解析关键代码

    Android Json 解析其实还是蛮重要的知识点,为什么这么说呢,因为安卓通信大部分的协议都是使用 json 的方式传输,我知道以前大部分是使用的 xml ,但是时代在发展社会在进步,json 成 ...

  6. android json解析及简单例子

    JSON的定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得了当今大部分语言的支持),从而可以在不同平台间进行数据 ...

  7. 【转】android json解析及简单例子

    JSON的定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得了当今大部分语言的支持),从而可以在不同平台间进行数据 ...

  8. Android JSON解析插件

    JSON是一种轻量级的数据格式,用于数据的交互. Android交互数据主要两种方式:JSON和 XML.XML格式比JSON格式数量略大,所以大多都使用Json数据格式. 在Android开发的过程 ...

  9. android json解析详细介绍之gson

    废话不多说,什么json是轻量级数据交换标准:自己百度去深入了解:这里有三种json解析工具.本人只用过其中两种:    1.Google Json利器之Gson   评价:简单,方便. 2.阿里巴巴 ...

随机推荐

  1. awk内置变量 awk有许多内置变量用来设置环境信息,这些变量可以被改变,下面给出了最常用的一些变量。

    ARGC 命令行参数个数 ARGV 命令行参数排列 ENVIRON 支持队列中系统环境变量的使用 FILENAME awk浏览的文件名 FNR 浏览文件的记录数 FS 设置输入域分隔符,等价于命令行 ...

  2. centos7安装codeblocks教程

    author:lidabo 装了好多次系统,每次装的时候都有要在网上各种查,太麻烦了.所以决定记录一下,以后用到的时候会方便一些.当然,本文来源于网络,取百家之长,最重要的是本人已验证过,说明对本系统 ...

  3. MySQL主键添加/删除

    2改动数据库和表的字符集alter database maildb default character set utf8;//改动数据库的字符集alter table mailtable defaul ...

  4. 数据绑定以及Container.DataItem几种方式与使用方法分析

    灵活的运用数据绑定操作        绑定到简单属性:<%#UserName%>        绑定到集合:<asp:ListBox id="ListBox1" ...

  5. while和do while习题

    using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 练习 { ...

  6. PHP - 计算执行程序耗时

    效果: 首先在includes文件夹下编写,global.func.php函数库: <?php /* * Version:1.0 * CreateTime:2015年11月11日 * Autho ...

  7. 分享最新15个加速 Web 开发的框架和工具(梦想天空)

    我们为开发人员挑选了15个最新的  Web 开发框架,你肯定尝试一下这些新鲜的框架,有的可能略微复杂,有的提供了很多的配置选项,也有一些窗口小部件和界面交互的选择.他们将帮助你创建更优秀的网站,提供给 ...

  8. WCF技术剖析之二十一: WCF基本的异常处理模式[上篇]

    原文:WCF技术剖析之二十一: WCF基本的异常处理模式[上篇] 由于WCF采用.NET托管语言(C#和NET)作为其主要的编程语言,注定以了基于WCF的编程方式不可能很复杂.同时,WCF设计的一个目 ...

  9. windows下安装mysql5.6.13的主从复制

    如下操作均在vmware 虚拟机中winows xp 测试成功 中间走了很多弯路,网上的很多资料都是针对5.1以前的版本,在新版中根本无法使用,所以根据自己的实践整理了这篇文章 主服务:192.168 ...

  10. Swift - 添加、修改、删除通讯录联系人

    使用AddressBook.framework框架,我们除了可以很方便的获取通信录里的联系人.同时,还能对通讯录进行新增.修改.删除联系人操作. (注意:这些操作同查询一样,首先需要发起授权请求) 1 ...