阳光网驿-企业信息化交流平台【DTC零售连锁全渠道解决方案】

 找回密码
 注册

QQ登录

只需一步,快速开始

扫描二维码登录本站

手机号码,快捷登录

老司机
查看: 1039|回复: 0

[转帖] Android 平台上读写 JSON 数据

[复制链接]
  • TA的每日心情
    开心
    2012-3-7 10:15
  • 签到天数: 11 天

    [LV.3]偶尔看看II

    发表于 2012-1-5 11:06:23 | 显示全部楼层 |阅读模式
    [代码] 解析 JSONpackage de.vogella.android.twitter.json;
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import org.apache.http.HttpEntity;
    import org.apache.http.HttpResponse;
    import org.apache.http.StatusLine;
    import org.apache.http.client.ClientProtocolException;
    import org.apache.http.client.HttpClient;
    import org.apache.http.client.methods.HttpGet;
    import org.apache.http.impl.client.DefaultHttpClient;
    import org.json.JSONArray;
    import org.json.JSONObject;
    import android.app.Activity;
    import android.os.Bundle;
    import android.util.Log;
    public class ParseJSON extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.main);
      String readTwitterFeed = readTwitterFeed();
      try {
       JSONArray jsonArray = new JSONArray(readTwitterFeed);
       Log.i(ParseJSON.class.getName(),
         "Number of entries " + jsonArray.length());
       for (int i = 0; i < jsonArray.length(); i++) {
        JSONObject jsonObject = jsonArray.getJSONObject(i);
        Log.i(ParseJSON.class.getName(), jsonObject.getString("text"));
       }
      } catch (Exception e) {
       e.printStackTrace();
      }
    }
    public String readTwitterFeed() {
      StringBuilder builder = new StringBuilder();
      HttpClient client = new DefaultHttpClient();
      HttpGet httpGet = new HttpGet(
        "http://twitter.com/statuses/user_timeline/vogella.json");
      try {
       HttpResponse response = client.execute(httpGet);
       StatusLine statusLine = response.getStatusLine();
       int statusCode = statusLine.getStatusCode();
       if (statusCode == 200) {
        HttpEntity entity = response.getEntity();
        InputStream content = entity.getContent();
        BufferedReader reader = new BufferedReader(
          new InputStreamReader(content));
        String line;
        while ((line = reader.readLine()) != null) {
         builder.append(line);
        }
       } else {
        Log.e(ParseJSON.class.toString(), "Failed to download file");
       }
      } catch (ClientProtocolException e) {
       e.printStackTrace();
      } catch (IOException e) {
       e.printStackTrace();
      }
      return builder.toString();
    }
    }
    [代码] 生成 JSONpublic void writeJSON() {
    JSONObject object = new JSONObject();
    try {
      object.put("name", "Jack Hack");
      object.put("score", new Integer(200));
      object.put("current", new Double(152.32));
      object.put("nickname", "Hacker");
    } catch (JSONException e) {
      e.printStackTrace();
    }
    System.out.println(object);
    }

    楼主热帖
    启用邀请码注册,提高发帖质量,建设交流社区
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    快速回复 返回顶部 返回列表