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. log4cpp的初步使用

    (1)下载log4cpp的工程,编译生成lib文件和dll库 下载路径为:http://sourceforge.net/projects/log4cpp/files/latest/download 如 ...

  2. javascript每日一练(十二)——运动框架

    运动框架 可以实现多物体任意值运动 例子: <!doctype html> <html> <head> <meta charset="utf-8&q ...

  3. 一个开发原则:永远不要返回NULL

    看一篇文章:10个经典的java开发原则,里面一个原则:永远不要返回NULL. 说实在的,我对这个原则体会不是很深,平时在使用对象前,检查是否为null已经成了习惯,也是我要求开发人员的一个标准动作. ...

  4. 修改VISUAL STUDIO EXPRESS 2012新建C++文件编码

    本站文章除注明转载外,均为本站原创或者翻译. 本站文章欢迎各种形式的转载,但请18岁以上的转载者注明文章出处,尊重我的劳动,也尊重你的智商: 本站部分原创和翻译文章提供markdown格式源码,欢迎使 ...

  5. SSH-Struts(一)——基本原理

    简单介绍 Struts框架是MVC的一个实现,它非常好的结合了JSP.Servlet.JavaBean.Taglib等技术.它为MVC的各层提供了良好的支持,就像房地产商盖房子时先盖的大楼框架. 仅仅 ...

  6. Spring整合Hibernate的步骤

    为什么要整合Hibernate?1.使用Spring的IOC功能管理SessionFactory对象 LocalSessionFactoryBean2.使用Spring管理Session对象  Hib ...

  7. o(n)解决问题:调整数组顺序是奇数位于偶数的前面

    问题描述: 输入一个整数数组,调整数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分 void reOrder(int *a,int len) { if(a==NULL || ...

  8. android的四种加载模式

    在Android中每个界面都是一个Activity,切换界面操作其实是多个不同Activity之间的实例化操作.在Android中Activity的启动模式决定了Activity的启动运行方式. An ...

  9. android的JNI标准 android的NDK

    转载的! Java Native Interface (JNI)标准是java平台的一部分,它允许Java代码和其他语言写的代码进行交互.JNI 是本地编程接口,它使得在 Java 虚拟机 (VM) ...

  10. JQuery 事件及案例

    JQuery事件与JavaScript事件相似,只是把其中的on去掉 1.click,dblclick事件 案例1:点击缩略图换背景 <html xmlns="http://www.w ...