1 引言
根据中国气象局关于开展降雪加密观测的紧急通知中,为
满足预报服务对降雪观测的需求,决定开展降雪加密观测。为了
减轻了观测员的工作强度,降低手工编报出错的机率在市局业
务科的大力支持下开发编写了降雪加密观测编发报软件。
2 Visual Studio .NET 集成开发环境概述
Visual Studio 是微软公司推出的开发环境。是目前最流行的
Windows 平台应用程序开发环境。Visual Studio .NET 继承了Visual
Basic 6.0 的快速开发的优点,另外,与.NET 框架下面的其他
语言如C# 和Visual C++ 一样,Visual Studio .NET 是完全面向对
象的。Visual Studio 可以用来创建Windows 平台下的Windows应
用程序和网络应用程序,也可以用来创建网络服务、智能设备应
用程序和Office 插件。
3设计思路
此系统的流程如图1 所示,其功能包括:参数设置;报文编
辑;报文发送;系统主界面如图2 所示:
图1 系统运行流程图图2 降雪加密观测编发报软
件主界面图
3.1 参数设置:右击桌面右下角状态栏的最小化图标,选择
“参数”或者系统界面上的红色参数设置连接按钮可以打开参数
设置窗体,如图3 所示。此模块可以设置台站的区站号、经纬度,
方便灵活,可移植性强。报文的发送是通过FTP方式上传到远程
服务器上指定的远端路径,所以首先设置连接远程服务器的参
数,可以通过此模块设置服务器IP 地址、端口、用户名、密码、远
端路径,设置完毕重启软件设置生效。如果访问的远程服务器相
应参数有变动可以通过此模块重新设置。
图3 参数设置
3.2 报文编辑:输入观测数据后单击“计算编报”,系统在后
台根据降雪加密观测的相关文件按照编报文件名的格式和编报
文件内容的格式自动编译并在本地文件夹中生成报文。报文的
文件名、文件内容然后在界面上显示出来,形象直观,可读性强。
在输入观测数据的时候如果误输入其它的非法数值(如字符,汉
字等)或超出观测范围的数值(如累积降雪深度为9999CM 等)系
统会出现错误提示对话框,来提醒观测员。这在一定程度上减轻
了观测员的工作强度,也避免了在手工编报过程中因认为因素
造成观测数据的真实性。
3.3 报文发送:观测员在认真校对报文的文件名和报文内容
准确无误后,单击“报文发送”,系统会自动连接到远程服务器,
并把生成的报文上传到指定的远端目录文件夹下。报文发送到
远端目录下后,系统把上传到服务器的报文再下载到本地指定
的目录文件夹下,然后比较两者报文的内容是否相同,如果相同
说明文件发送成功,否则说明文件没有成功发送。在报文发送的
过程中从远程数据库的连接到报文内容的比较,发送是否成功,
系统界面的报文回执栏都会显示每一步报文的发送过程,一目
了然的查看了报文的发送状态。如图2 所示。
4降雪加密观测编发报软件实现的核心代码
4.1 在Visual Studio.NET 平台下实现报文编辑的主要代码
为:
……
FileName=CreateFileName();//文件名组合函数
if (File.Exists(FileName));//如果文件存在File.Delete(FileName); //直接删除已经存在的文件
sw=File.CreateText(FileName);// 创建新文件
sw.WriteLine (ReportText);// 写入文本内容,ReportText
表示编辑好的文本内容
……
StreamReader sr=File.OpenText(path);// 打开文件
txtReportText=sr.ReadToEnd ();// 报文内容显示在界面
上
……
4.2 报文发送是通过FTP 方式发送到远程服务器上,主要
代码为:
……
//连接FTP
FTP myftp=new FTP (IP,ServerPath,UserName,UserPwd,
Port);
// 其中IP 表示服务器地址,ServerPath 表示远端路径,
UserName 表示用户名,UserPwd 表示用户密码,Port 表示服务器
端口
//上传文件
myftp.Put(UpFilePath, UpFileName);
// 其中UpFilePath 表示要上传文件的本地路径,fileName
表示要上传的文件名
//文件下载
myftp.Get(DownFileName,LocalFilePath); //下载到本地
// 其中fileName 表示从远端服务器下载文件的文件名,
LocalFilePath 表示要下载文件到本地的路径。
//关闭连接
myftp.DisConnect();
……
UpFileText=File.OpenText(UpFileName);//打开本地报文
FileText1=UpFileText.ReadToEnd();// 读取报文内容
DownFileText=File.OpenText (DownFileName);// 打开从远端
服务器下载的报文
FileText2=DownFileText.ReadToEnd ();DownFileName// 读取
报文内容
if (string.Equals(FileText1, FileText2)==true)// 如果文件
内容相同
{
……//报文发送成功。
}
else
{
……//报文发送失败。
}
……
5结语
本系统在Visual Studio.NET 平台下实现了降雪加密观测
自动编报、发报的功能,在张家口全市14 个台站2009 年11 月9
日至今加密观测编发报的运行下,没有出现任何错误,可以帮助
观测人员减轻工作强度,降低手工编报出错的机率,提高工作效
率。
参考文献:
[1]吕伟臣,霍言,吕宝臣.Visual C# 2005 入门与提高第1
版[M]. 清华大学出版社,2006.
[2]肖建.ASP.NET 编程基础[M] 第1 版.清华大学出版社,
2002.
(责任编辑:铅笔画圆) |
CN论文网,是一个专门从事期刊推广、论文发表、论文投稿指导的机构。
|