Android weather 小应用

穆俊杰
2023-12-01

系列的,中断了,后面因为有事情,希望可以重新捡起来继续做。(搬家过来的)


我也不知道自己什么时候不写了,写一点就记录一点吧 

首先写的是网络访问的问题:

实时数据来源:

http://www.weather.com.cn/data/sk/101010100.html

http://www.weather.com.cn/data/cityinfo/101010100.html

http://m.weather.com.cn/data/101010100.html

public class Webtools{
    /*
     * 功能:获取给定url里的内容,返回Json格式文本
     * 
     */
    public String GetWebContent(String strurl){
        //获取 httpget 对象
        Log.i("Infor",strurl);
        HttpGet httprequest=new HttpGet(strurl);
        String content="";
        try{
            //HttpClient是接口,DefaultHttpClient是实现该接口的子类
            HttpClient hc=new DefaultHttpClient();
            //获得respongse对象
            HttpResponse hr=hc.execute(httprequest);
            if(hr.getStatusLine().getStatusCode() == HttpStatus.SC_OK){
                //获得文本内容
                content=EntityUtils.toString(hr.getEntity());
            }
            else{
                content="error";
            }
        }
        catch(ClientProtocolException e){
            e.printStackTrace();
        }
        catch(IOException e){
            e.printStackTrace();
        }
        Log.i("Infor",content);
        return content;
    }
}

非常重要的一点,要在manifest中添加权限

<uses-permission android:name="android.permission.INTERNET" />

下面是如何将JSON个数数据转换为我们所能用的数据

以前没接触过JSON数据格式,现在说一下。

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成。简单地说,JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应用程序中将字符串从 Web 客户机传递给服务器端程序。这个字符串看起来有点儿古怪,但是 JavaScript 很容易解释它,而且 JSON 可以表示比"名称 / 值对"更复杂的结构。

例如,可以表示数据和复杂的对象,而不仅仅是键和值的简单列表。

名称 / 值对
按照最简单的形式,可以用下面这样的 JSON 表示"名称 / 值对":
{ "firstName": "Brett" }
更多的了解其实去百科里面去找就可以,我这个也是从百科上找来的。

 类似资料: