`
nivcheral
  • 浏览: 71112 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

天气预报

    博客分类:
  • java
阅读更多
public class WeatherUtil {   
  
    /**  
     * 使用 google 查询天气<br/>  
     * 上海: http://www.google.com/ig/api?hl=zh_cn&weather=shanghai  
     *   
     * @param city 城市拼音, 如 北京: beijing  
     */  
    public static String getweather(String city) {   
        StringBuilder sbd = new StringBuilder();   
        try {   
            String ur = "http://www.google.com/ig/api?hl=zh_cn&weather=";   
            java.net.URL url = new java.net.URL(ur + city);   
            java.io.InputStream in = url.openStream();   
  
            String st = "";   
            // 将流转换为 文本. 此一过程是为了解决乱码问题   
            java.io.ByteArrayOutputStream bos = new java.io.ByteArrayOutputStream();   
            int i = -1;   
            while ((i = in.read()) != -1)   
                bos.write(i);   
  
            // 转换编码为 GB18030, 否则会乱码   
            st = bos.toString().replace("<?xml version=\"1.0\"?>",   
                    "<?xml version=\"1.0\" encoding=\"GB18030\"?>");   
  
            // 将文本转换成流   
            java.io.InputStream inp = new java.io.ByteArrayInputStream(st   
                    .getBytes());   
  
            // 读取流   
            org.w3c.dom.Document doc = javax.xml.parsers.DocumentBuilderFactory   
                    .newInstance().newDocumentBuilder().parse(inp);   
  
            // 日期    
            org.w3c.dom.NodeList n1 = doc.getElementsByTagName(   
                    "forecast_information").item(0).getChildNodes();   
            // 城市:   
            sbd.append(n1.item(4).getAttributes().item(0).getNodeValue())   
                    .append(" ").append(city).append(" : ");   
  
            // 天气, 最高气温 最低气温   
            org.w3c.dom.NodeList n2 = doc.getElementsByTagName(   
                    "forecast_conditions").item(0).getChildNodes();   
            sbd.append(n2.item(4).getAttributes().item(0).getNodeValue())   
                    .append(", ").append(   
                            n2.item(1).getAttributes().item(0).getNodeValue())   
                    .append("℃ - ").append(   
                            n2.item(2).getAttributes().item(0).getNodeValue())   
                    .append("℃");   
  
        } catch (Exception e) {   
            sbd.append("获取天气失败或不存在此城市");   
        }   
        return sbd.toString();   
    }   
  
    public static void main(String[] args) {   
        System.out.println("北京天气: " + WeatherUtil.getweather("guangzhou"));   
    }   
}  

 

分享到:
评论
2 楼 lehehe 2014-08-24  
1 楼 lehehe 2014-08-24  
不太懂java,用了封装好的接口,http://www.haoservice.com/docs/6
还行!

相关推荐

    微信小程序 天气预报 (源码)

    微信小程序 天气预报 (源码)微信小程序 天气预报 (源码)微信小程序 天气预报 (源码)微信小程序 天气预报 (源码)微信小程序 天气预报 (源码)微信小程序 天气预报 (源码)微信小程序 天气预报 (源码)微信小程序 天气...

    安卓期末大作业Android天气预报app源码.zip

    安卓期末大作业Android天气预报app源码安卓期末大作业Android天气预报app源码安卓期末大作业Android天气预报app源码安卓期末大作业Android天气预报app源码安卓期末大作业Android天气预报app源码安卓期末大作业...

    小程序源码 天气预报 (代码+截图)

    小程序源码 天气预报 (代码+截图)小程序源码 天气预报 (代码+截图)小程序源码 天气预报 (代码+截图)小程序源码 天气预报 (代码+截图)小程序源码 天气预报 (代码+截图)小程序源码 天气预报 (代码+截图)小程序源码 ...

    易语言天气预报例程源码,易语言国内主要城市天气预报

    在本案例中,我们讨论的主题是"易语言天气预报例程源码",这是一段用于获取并显示中国主要城市天气预报的程序代码。 首先,我们要理解易语言的基本结构和语法。易语言的核心设计理念是“易学易用”,它的基本语句...

    Android Studio实现天气预报APP系统源码(也可做Android本科毕业设计).zip

    Android Studio实现天气预报APP系统源码(也可做Android本科毕业设计)天气预报 介绍做的一个天气预报demo,界面美观,实现了自动获取当前位置天气信息、根据天气更换背景图、更换城市、热门城市列表、记住设置的...

    json天气预报_jsonweather_安卓天气预报_

    JSON天气预报是一个基于JSON数据格式实现的安卓应用,主要用于提供实时的城市天气信息。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它以文本形式存储和传递数据,易于人阅读和编写,同时也易于...

    IBM-Weather.rar_IBMweather_IBM天气预报_ibm天气_天气预报 IBM

    【IBM世界地图时间天气预报】是一款由IBM公司提供的专业天气预报工具,它集成了IBM的先进数据分析技术和全球气象数据,为用户提供精准、实时的全球天气信息。这款软件以地图的形式展示世界各地的天气状况,帮助用户...

    Android天气预报实验报告

    【Android天气预报应用开发】 在Android平台上开发天气预报应用是一个典型的移动应用开发案例,涉及到网络数据获取、地理位置定位、UI设计以及数据存储等多个方面。以下是对这个实验报告中涉及的知识点的详细说明:...

    天气预报代码各种样式

    在IT行业中,网页开发是一项重要的技能,而天气预报作为日常生活中常见的信息查询需求,常常被开发者用作示例或实际项目中的功能实现。本主题聚焦于"天气预报代码各种样式",主要涉及到JSP(JavaServer Pages)和...

    Android Studio项目天气预报

    Android Studio 天气预报,含有基本功能:可以罗列全国所有的省、市、县;可以查看全国任意城市天气信息;可以自由切换城市,去产看其他城市的天气;提供手动更新以及后台自动更新天气功能。访问中国所有省份,需要...

    html javascript 天气预报 (内附源代码)

    在天气预报的场景下,可能包含标题、当前温度、未来几天的天气预报图标和文字描述等元素。 - 数据容器:HTML元素如`&lt;div&gt;`、`&lt;span&gt;`用于存放天气预报的数据,通过CSS进行样式设计,使其呈现出webQQ的风格。 2. ...

    基于QT的在线天气预报源码.zip

    "基于QT的在线天气预报源码.zip" 这个标题指出,这是一个包含使用QT开发的在线天气预报应用的源代码文件。QT是一个跨平台的应用程序开发框架,广泛用于创建图形用户界面(GUI)应用程序。这里的“在线天气预报”指的...

    仿百度天气预报样式的echart静态html实例

    **标题详解:** "仿百度天气预报样式的echart静态html实例" 这个标题指出,我们将会讨论一个使用ECharts图表库创建的HTML页面,该页面模仿了百度天气预报的样式。ECharts是一个由百度开发的开源JavaScript图表库,...

    安卓系统桌面天气预报

    【安卓系统桌面天气预报】是专门为安卓用户设计的一款桌面插件,它将实时的天气信息直接展示在手机或平板电脑的主屏幕上,为用户提供便捷的天气查询服务。这款插件以其精简的设计、优美的界面、高效的性能以及快捷的...

    基于Qt5的天气预报.zip

    《基于Qt5的天气预报应用开发详解》 在信息技术飞速发展的今天,各种应用程序的开发已经成为日常生活的一部分。本文将深入探讨一个使用Qt5框架开发的天气预报应用,它结合了C++编程语言、cJson库以及天气预报API,...

    Android本科毕业设计基于Android的天气预报APP系统源码.zip

    Android本科毕业设计基于Android的天气预报开发APP系统源码。显示城市当前的实时天气状况,包括城市名称、城市名片、天气情况、温度高低、星期等信息。界面左边有一列城市列表,显示中国各个城市名称,当用户想知道...

    微信小程序demo:精品天气预报;使用百度地图API(源代码+截图)

    微信小程序demo:精品天气预报;使用百度地图API(源代码+截图)微信小程序demo:精品天气预报;使用百度地图API(源代码+截图)微信小程序demo:精品天气预报;使用百度地图API(源代码+截图)微信小程序demo:精品天气...

    Web Service 解读天气预报WSDL获取天气程序

    在这个特定的项目中,我们关注的是如何使用Web Service来获取天气预报信息,特别是通过解析WSDL(Web Services Description Language)文件。WSDL是一种XML格式,用于定义服务的位置、接口以及如何调用这些服务。 ...

    天气预报需求说明书

    ### 天气预报需求说明书知识点解析 #### 一、项目概述 - **项目名称**:Android天气预报应用 - **项目组**:第六组 - **联系人**:曲泰、李洪磊、李浩术、高勇、宋海东、张文鹏 - **联系方式**:电话和电子邮件...

Global site tag (gtag.js) - Google Analytics