【Android】聊天机器人*第二课

1、json数据解析

解析数据,就需要写一个解析函数,这里就简单的写在mainActivity中:

public void parseText(String str){
        try {
            JSONObject jb = new JSONObject(str);
            System.out.println(jb.getString("code"));
            System.out.println(jb.getString("text"));

        } catch (JSONException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        
    }

因为我们可以看到之前获得的回应中,有的两个参数就是code和text(忘了的可以看一下上一篇内容)

然后在我们之前的getDataurl()方法中,我们就调用刚写的解析函数:

@Override
    public void getDataurl(String data) {
        // TODO Auto-generated method stub
        //System.out.println(data);
        parseText(data);
    }

大家不要弄混了,这个getDataurl函数就是我们在HttpGetDataListener接口中定义的,然后我们在mainActivity中实现的。

最后实现的结果是(在logCat中看):

  • System.out: 100000
  • System.out: 亲爱的,悄悄地告诉我你在哪个城市?

是不是和浏览器中获得内容是一样的呢?只是把它分成了两部分获取。

2、数据封装

数据封装,就需要建一个新的数据类:ListData
这里只是封装了一下一条内容。

package com.ych.wechat;
//不仅仅是封装内容,时间,语句,判断左右之类
public class ListData {
    private String content;
    public ListData(String content) {
        // TODO Auto-generated constructor stub
        setContent(content);
    }
    
    public String getContent() {
        return content;
    }
    
    public void setContent(String content) {
        this.content = content;
    }
}

写完后,我们就需要在mainActivity中修改相关:

……
//没有修改的就不再展示
private List<ListData> lists;
……

private void initView(){
    lists = new ArrayList<ListData>();
}

public void parseText(String str){
        try {
            JSONObject jb = new JSONObject(str);
            //System.out.println(jb.getString("code"));
            //System.out.println(jb.getString("text"));
            ListData listData;
            listData = new ListData(jb.getString("text"));//只是封装了一条数据
            lists.add(listData);
        } catch (JSONException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        
    }

这样就是完成了简单的封装,这里更多的是做个演示。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,726评论 25 709
  • 写了两次,总是没有把它写完,因为这个太虚幻了,基本不能实现,但是又舍不得放弃,女人天生爱幻想啊! 有足...
    安小敏阅读 137评论 2 1
  • 我是替领导办事的财神, 我能容纳不计其数的钱。 所有百姓捐来的款都 放在我肚子里。 我一时也特别荣光, 可我却是过...
    旖旎i阅读 205评论 0 2