基于.NET的气象信息手机网站建设
第32卷第1期广东气象V01.32No.12010年2月GuangdongMeteorologyFebruary2010dol:10.3969/j.issn.1007-6190.2010.01.Olg
第32卷第1期广东气象V01.32No.12010年2月GuangdongMeteorologyFebruary2010dol:10.3969/j.issn.1007-6190.2010.01.Olg
基于.NET的气象信息手机网站建设
何迪,蒋国华
(清远市气象局,广东清远511518)
摘要:介绍基于ASP.NET技术开发,面向手机用户的WAP气象信息手机网站,利用ADO.NET技术查询包括压、温、湿、降水4要素的定时和逐日数据,利用Photoshop软件编程自动处理网站的雷达和卫星云图,实现气象信息显示移动化。
关键词:计算机应用;手机网站;气象信息;无线标记语言;图片处理
中图分类号:TP39文献标识码:B文章编号:1007—6190(2010)01—0050—03随着计算机技术的发展和现代气象业务体系的建2手机网站的功能和实现
设,气象信息由以前的单一化变成现在的多元化,获得和手机网站提供重要天气要素,如温度、湿度、气压和处理气象信息的方法和工具也随之发生变化。目前计算降水的数据查询功能,以及雷达、卫星云图的图片查看功机是最常用的处理信息的终端设备,随着3G网络的建成能(图1)。数据查询主要访问地面观测业务软件“OSS—和普及,手机也将逐渐成为重要的获得信息的终端设备。MO”的Access数据库文件B文件,和自动气象站监控软本文介绍如何利用ASP.NET开发基于WAP的气象信息件“SAWSS”的文本文件z文件o“,可以利用ADO.NET手机网站,实现气象信息显示的移动化和无线化¨。J。访问B文件,用顺序读取的方法访问文本文件【81。而图1WAP服务器的建立片查看实现比较复杂,因为目前GPRS网速较慢,而且手
手机网页的开发语言为WML(Wireless机屏幕较小,不能显示太大的图片,因此从省气象公共网
MarkupLan—
站下载的云图和雷达图一。…,一定要经过处理才能被网
guage,无线标记语言),WML和HTML都属于XML语言。站利用。
可以在Pc机上用IE或Netscape等浏览HTML语言编写
的内容,而WML语言写的文件则是专门用来显示在手机
等一些无线终端显示屏上HJ。由于ASP.NET开发手机
网站,最终输出结果是WML或者XML格式的字符串流,
因此,服务器应能支持WML。以WindowsServer的IIS为
例,在IIS默认网站的选择属性,选择“http头”选项卡,点图1网站结构击“MIMI映射”,在文件类型中添加以下新类型,然后重
新启动IIS,就支持WML语言和WMLScript了。2.1数据文件的访问
wmltext/vnd.wap.wml数据库B文件每个月生成一个,格式为:“Bsssssmm.wmlcapplication/vnd.wap.wmlcYYY”。大写字母“B”为标识,SSSSS为台站号,mm为月份,wbmpimage/vnd.wap.wbmp后缀YYY表示年,如59280站2005年1月B文件为wmlscapplication/vnd.wap.wmlscriptc“B5928001.005”。B文件内有tabPrimobservdDatal~tab—wmlstext/vnd.wap.wmlscriptPrimobservdData4。tabPrimobservdDatal保存了各时次采WSCapplication/vnd.wap/wmlscriptc集的全部要素,其中最重要、最常用的有观测时次,温度、此外,网站服务器必须有一个固定的IP或者域名,湿度、气压和降水。
可以向电信部门申请,也可以租用一个服务器空间,还可ASP.NET技术基于微软.NET平台,数据访问采用以用免费的“花生壳”动态IP解析软件来实现。只要去ADO.NET技术,包括各种数据库的连接和命令对象、数该软件的网站申请一个帐号和域名,再用此帐号登陆,该据读取和显示对象等。.NET平台支持多种开发语言,包软件就能解析本地的IP地址,并使本地IP与申请的域括c#、VB.NET、J#等,本文以VB.NET为例介绍网站开名相对应。有了域名就能访问互联网上的这台主机,通发。手机网站借助OLEDB类的各种对象访问Access数过相关的配置和传输协议,该主机可以成为FrP服务器,据库。数据文件访问首先要用到数据库连接对象OleDb—也可以成为WEB服务器等。再按照上述方法配置IIS,Connection,其主要属性是连接字符串connectionstring。该主机就成为手机也能访问的服务器了”“J,当然还需连接成功后使用OleDbCommand对象查询读取B文件,要一部能够上网的手机进行测试。该对象初始化时有两个参数:SQL语句和数据库连接对收稿日期:2009—06—20作者简介:何迪(1982年生),男,助理工程师,学士,主要从事地面气象测报工作。万方数据
,第1期何迪等:基于.NET的气象信息手机网站建设
51
象。查询各时次4要素的SQL语句和程序代码如下:
Me.OleDbCommandl.CommandText=“SELECTObserv—
TimesAS观测时次,DryBulbTempAS干球温度,RelHu-midity
AS相对湿度,StationPressAS本站气压,RRRAS各
时降水WHEREObservTimes=…&pm&“”’,其中参数pm表示查询的时间条件。执行该语句后定义一个OleD—bDataReader数据读取对象daytj,存储OleDbCommandl所查询的结果,最后用daytj的Read方法读出查询结果‘”15|。
2.2图片的下载和处理
手机网站利用省气象公共网上的雷达和卫星云图,下载和处理应该是实时的,而手机的访问是不定时的。为了减轻服务器负担,缩短服务器响应时间,需另外开发一个程序来实现图片的下载和处理。
1)通过对MSXML2.XMLHTI'P.3.0对象编程实现图片下载。XMLHTYP对象是AJAX技术的核心部件,它的主要方法和属性有Open、Send和Responsebody:Open方法为创建一个新的http请求,并指定此请求的方法、URL以及验证信息;Send方法发送请求到http服务器并接收回应;Responsebody属性返回某一格式的服务器响应数据。另外,还要用到Timer控件根据图片的文件名格式不断产生图片文件名称,并根据网站地址拼接成对应的URL地址;然后利用XMLHTYP对象向URL地址发送请求并接收Responsebody属性返回的数据;最后保存这些数据为图片格式文件,如gif即可。
2)图片处理可用.NET的Draw对象来实现,但要控制图片的尺寸和大小,效果并不理想。可以通过引用Photoshop软件的Interop.Photoshop.dll建立Application对象,调用和控制Photoshop软件的各种对象,实现图片处理的程序化和自动化。由于只是简单处理图片尺寸和大小,因此只需调用Photoshop软件的Action对象就可以实现【1””J。主要代码如下:
Dimphsappas
Photoshop.Application=New
Photo-
shop.Application
phsapp.Visible=False
phsapp.Open(ytfilenam)phsapp.Load(“yt.atn”)
phsapp.DoAction(“otby”,“yt.atn”)
phsapp.ActiveDocument.Close(Photoshop.PsSaveOp—
tions.psDoNotSaveChanges)
phsapp=Nothing
2.3控件的使用
ASP.NET开发手机网站主要利用Response的Write方法直接在后台生成WML语句,或添加移动Webform来实现,也可以两种方法混合使用。前一种方法涉及WML语法,在此不详述;后一种方法更加快捷方便,添加移动Webform后可以在里面添加以mobile为标识的控件,这些控件和以asp为标识的ASP.NET其他控件使用起来大致相同。移动控件可以根据不同的客户访问终端自动做出不同的响应,也可以另外在后台生成字符串,根据不同客户端设置Response对象的ContentType,确定返回的
万方数据
格式。若是浏览器访问则返回“text/html”,手机访问则返回“application/vnd.wap.xhtml+xml”或者“text/vnd.wap.wml”。在移动Webform中也可以添加asp控件,但首先要添加DeviceSpecific控件,然后才能在该控件的模板中添加asp控件(如GridView控件),并可以通过程序代码来控制DeviceSpecific中的GridView控件。例如以下代码用一个GridView绑定DataSet来显示数据:
DimdsAsData.DataSet=NewData.DataSet
ds.ReadXml(Server.MapPath(“a11.xml”))
Dim
C
AsControl
ForEachC
InMe.Forml.Controls
Ife.GetTypeIsGetType(MobileControls.Template—
Container)Then
Dimgwl
As
GridView=CType(C.FindControl
(“gwl”),GridView)
If
Not(gwl
Is
Nothing)Then
gwl.DataSource=ds.Tables(0).DefauhViewgwl.DataBind()
EndIfEndIfNext
C
用.NET开发的手机网站可以根据客户访问的终端做出不同的响应,因此,调试第1步用浏览器调试;第2步用WAP手机模拟器调试;第3步用手机调试。用浏览器调试手机网站和调试普通计算机网站一样,确定程序的语法和逻辑是否正确。通过浏览器调试后就可以用手机模拟器调试了。手机模拟器有很多种,常见的有为手机种类繁多,调试时应该尽量多试几个模拟器。通过模拟器调试后就可以在手机上进行调试了,先将计算机主机接人因特网,并登陆花生壳软件,然后在手机中输图2
NET仿真器调试图(左)和手机调试屏幕截图(右)
(下转第60页)
3调试手机网站
M3Gate、UP.SDK和Opera,还有一些手机生产商也提供模拟器,可以用.NET中的仿真器进行调试(图2左)。因入花生壳软件申请的域名即可(图2右)。由于手机的差异性,可能显示的效果会有所不同,特别是黑白屏的手机,只能支持wbmp格式的黑白图片,不能显示彩色的gif等格式的图片。
,广东气象第32卷
14参考文献:
12
[1]中国气象局.地面气象观测规范[s].北京:气象出版社,
10
芝8
魁[2]陈武框,李国森.自动气象站气压传感器自动化检定系统设赠6计与实现[J].广东气象,2008,30(2):58—59.
4
[3]李勇增,郑细华.容易引起气压表读数误差的原因[J].广东
2气象,2008,30(2):64.
0
I7:50[4]杨伍林,赵晓利,罗祖红,等.两套不同型号自动气象站采集
时刻的气象数据的差异[J].广东气象,2008,30(3):49—50.
图31月27日17:50一18:03潮州草温、气温和地温逐分钟变化『-.2003:85—89.17:53一.一.一.17:5617:5918:02[5]肖明丽,蔡敷川,张新雄,等.一次疑似“飑”的观测判定[J].
广东气象,2008,30(3):55—56.
3结语[6]刘志辉,邹兴奋.冬春季判断积雨云的难点[J].广东气象,
当使用地面测报A文件审核辅助软件,发现草面温2008.30(3):66.
度与地面温度差异比较大时,应先判断是否仪器故障、日[7]钟美英,黄志兴.如何避免自动气象站错情的发生[J].广东维护不当或天气系统、风、草高、环境等因素的影气象,2008,30(4):62—63.
响【6‘1…,排除这些影响后,再调出每日分钟数据AWS—II—[8]黎晓红,王东,李秀艳.自动气象站数据质量控制软件应用iii—YYYYMMDD.RTD(其中,AWS为文件标识符,lliii为[J].广东气象,2008,30(4):64.
区站号,YYYY为年份,MM为月份,DD为日期,RTD为[9]丘少欢,胡少立.自动气象站常见错情成因及防范措施[J].文件后缀),或用阳江吴华斌的RTD分钟数据显示软件广东气象,2008,30(4):65—66.
(分钟资料图形曲线)来判断草温数据是否出现跳跃、是[10]许燕梅,黄值钦,莫小飞,等.如何减少因采集器电源故障造否异常,以确保数据的正确性。成的数据缺测[J].广东气象,2009,31(3):58.
(上接第51页)[J].广东气象,2008,30(4):42—44.
气象信息手机网站的建立,在有手机信号的地方可[7]张翼,周如梅.轻松实现气象网站资料的自动更新[J].广东随时随地用手机浏览重要的气象信息,而不必再依靠计气象,2008,30(2):56—57.
[8]CHRISH.ASP.NET2.0入门经典[M].北京:清华大学出版
算机和有线网络,实现了气象信息显示移动化。通过手社,2007.
机就能第一时间获得第一性气象资料,作出快速准确的[9]陈红,赵员春.FY一2c卫星资料在热带风暴“范斯高”预报分决策,更好地做好气象服务。除此之外,手机网站还可以析中的应用[J].气象研究与应用,2008,21(2):42—44.添加天气预报等其他内容,若能对公众开放,使大众也能[10]李勇增,郑细华.如何应用卫星云图和雷达回波观测夜间云近距离接触云图和雷达图,随时随地了解气象信息,对气[J].广东气象,2008,30(2):65—66.
象部门也是一种很好的宣传。[11]吕高旭,亮剑.NET:ASP.NET商业级数据库网站开发实战
[M].北京:电子工业出版社,2009.
参考文献:[12]何健,易峰,吕勇平,等.广东省气象科学数据共享系统的建[1]敖振浪,伍光胜,周钦强,等.基于GPRS技术的自动气象站数设[J].广东气象,2008,30(6):54—56.
据采集系统[J].广东气象,2007,29(4):l一3.[13]于平,李汉彬,段海花,等.市级自动气象站数据库显示系统[2]严律轩,林江,丁伟杰.掌上防雷业务移动系统的设计[J].广的设计与实现[J].广东气象,2008,30(6):57—58.
东气象,2007,29(3):47—48.[14]梁慎青,石小英,梁苑苑,等.广东省气象信息实时监视系统[3]李晓琳,魏炜,林江.广东省气象彩信业务平台的设计与实现的开发及应用[J].广东气象,2009,3l(1):57—59.
[J].广东气象,2008,30(3):42—43.[15]庞芳,王丽玫,卢伟萍.基于WEB的突发气象灾害预警信号[4]MARTINF.WML与WMLScript入门[M].北京:中国电力出发布系统[J].气象研究与应用,2008,21(2):42—44.
版社,2002.[16]许基海.征服PHOTOSHOPCS3基础与实践全攻略[M].北[5]江红.ASP.NET动态网页设计案例教程(VISUALBASIC.京:电子工业出版社.2009.
NET版)[M].北京:北京大学出版社,2009.[17]李春葆,金晶,曾平.VB.NET2005程序设计教程[M].北[6]朱平.ASP+ACCESS在气象短信素材库系统建设中的应用京:清华大学出版社,2009.万方数据
,基于.NET的气象信息手机网站建设
作者:
作者单位:
刊名:
英文刊名:
年,卷(期):何迪, 蒋国华清远市气象局,广东清远,511518广东气象GUANGDONG METEOROLOGY2010,32(1)
参考文献(17条)
1. 李晓琳;魏炜;林江 广东省气象彩信业务平台的设计与实现[期刊论文]-广东气象 2008(03)
2. 严律轩;林江;丁伟杰 掌上防雷业务移动系统的设计[期刊论文]-广东气象 2007(03)
3. 敖振浪;伍光胜;周钦强 基于GPRS技术的自动气象站数据采集系统[期刊论文]-广东气象 2007(04)
4. 李春葆;金晶;曾平 VB.NET 2005程序设计教程 2009
5. 许基海 征服PHOTOSttOP CS3基础与实践全攻略 2009
6. 庞芳;王丽玫;卢伟萍 基于WEB的突发气象灾害预警信号发布系统[期刊论文]-气象研究与应用 2008(02)
7. 梁慎青;石小英;梁苑苑 广东省气象信息实时监视系统的开发及应用[期刊论文]-广东气象 2009(01)
8. 于平;李汉彬;段海花 市级自动气象站数据库显示系统的设计与实现[期刊论文]-广东气象 2008(06)
9. 何健;易峰;吕勇平 广东省气象科学数据共享系统的建设[期刊论文]-广东气象 2008(06)
10. 吕高旭;亮剑 NET:ASP.NET商业级数据库网站开发实战 2009
11. 李勇增;郑细华 如何应用卫星云图和雷达回波观测夜间云[期刊论文]-广东气象 2008(02)
12. 陈红;赵员春 FY-2C卫星资料在热带风暴"范斯高"预报分析中的应用[期刊论文]-气象研究与应用 2008(02)
13. CHRIS H ASP.NET 2.0入门经典 2007
14. 张翼;周如梅 轻松实现气象网站资料的自动更新[期刊论文]-广东气象 2008(02)
15. 朱平 ASP ACCESS在气象短信素材库系统建设中的应用[期刊论文]-广东气象 2008(04)
16. 江红 ASP.NET动态网页设计案例教程(VISUAL BASIC.NET版) 2009
17. MARTIN F WML与WMLScript入门 2002
本文链接:http://d.g.wanfangdata.com.cn/Periodical_gdqx201001018.aspx