【VB开源代码栏目提醒】:网学会员为需要VB开源代码的朋友们搜集整理了VB 编程实现测量数据文件的批量处理 - 编程语言相关资料,希望对各位网友有所帮助!
年月第卷第期地理空间信息
VB编程实现测量数据文件的批量处理祝昕刚广东省地质测绘院广东广州510800摘要介绍了采用VisualBasic语言编程实现大批量、反复的、条理性的测量数据文件一次性处理的方法和技巧。
批量处理数据能够节省工作时间、减轻劳动强度、提高工作效率还可减少人工错误、确保数据精度值得推广。
关键词VisualBasic语言窗口控件编程批量处理数据文件中图分类号P208文献标志码:B文章编号:1672-4623201105-0115-03收稿日期2011-08-09近些年来测绘业已经步入了全数字测绘的先进时代数字化基础信息数据已成了国土、测绘、水利、变形监测等行业不可缺少的重要支撑。
尤其是城市建设对快速高效的数字化测绘产品的需求量越来越大一些测绘工程要求工期短、质量高。
在这个高效率的数字测绘时代以前的一些常规的数据处理、检查手段已经满足不了这些高速度、高质量、高标准的要求成了当前测绘生产过程的一个瓶颈。
改善数据处理、检查手段已是一个亟待解决的问题。
1VisualBasic设计测量程序的优势目前市面上的测绘软件有很多种涉及数据处理、制图、数字化测绘成图、GIS
系统、GPS平差解算等方面。
但实际工作中我们遇到的问题有很多种各种
软件也都存在一定的局限性。
这时就需要我们自己编写程序来解决实际工作中的一些
问题。
从测量工作的应用角度来讲VisualBasic程序语法简单易学、方便快速、功能强大具有一些显著的优点1简单易学基础语言是Basic。
可以自动进行语言检查也可以用中文定义变量易懂易学。
2面向对象的可视化编程界面简单很适合测绘程序的开发。
3广泛支持二次开发程序。
我们
工作中
常用的一些软件如Excel、Word、Auto
cad、ArcGIS、MapGIS等都支持
VB的二次开发。
它们内嵌的VBA程序和VisualBasic程序有很多的共通之处。
此外VisualBasic还具有强大的数据库访问和操作能力非常适合我们开发一些测绘方面的应用程序。
2
VB编写批量处理数据程序的方法在测绘工程项目中经常有很多的甚至是海量的测量数据文件需要我们短时间处理提交。
这些工程项目要求的时间比较短质量高。
为了确保数据的精确性、可靠性都要经过多重检查方可提交。
笔者通过多年的工作实践潜心研究编制了一些特定需要的数据文件批量处理检查程序。
对于大批量的、条理性、具有一定规律的数据文件可以在很短的时间内一次性处理检查完毕提高了工作效率节省了劳动力。
下面以四等水准测量数据的检查为例对VisualBasic批量处理数据文件程序的主要部分进行介绍。
1建立程序主界面。
首先用VisualBasic面向对象的编程功能添加窗体、控件等需要的编程元素建立适合的程序界面。
程序运行界面如图1所示。
图1数据调入检查处理运行界面2批量打开数据程序的建立。
对批量选择按钮进行编程VisualBasic公用对话框控件允许我们为用户提供对硬盘上的目录和文件结构进行访问公用对话框控件可以让用户很容易地选择一个或多个的文件实现文件的批量选择。
如下WithCommonDialog1.CancelErrorTrue.MaxFileSize32767被打开的文件名尺寸设置为最大即32K.FlagscdlOFNHideReadOnlyorcdlOFNAllowMulti-selectOrcdlOFNExplorer地理空间信息116第卷第期.DialogTitle选择文件.Filter所有类型的文件...ShowOpenDlgInfoGetDlgFileInfo.FileNameEndWith由于要打开的数据文件很多我们选择listbox控件用以显示数据文件当然也可以用其他的一些控件。
主要目的就是显示大批量的文件方便查阅。
Fori1ToDlgInfo.iCountList2.AddItemDlgInfo.sPathlgInfo.sFileirrrdDlgInfo.sPathDlgInfo.sFileibbLenrrrdList3.AddItemLeftTrimrrrdbb-3sssNexti3测量数据的批量处理检查
程序。
编写这部分程序前一定先对待检查处理的数据文件进行分析和研究找出它们的规律性方便批处理程序的编制。
对打开的多个数据文件建立循环循环批量读入数据文件批量进行检查、批量写出检查
报告数据。
实现文件循环读取的主要
代码如下所示。
Fori1ToDlgInfo.iCount建立文件循环读写OpenDlgInfo.sPathDlgInfo.sFileiForInputAsiOpenStrSubDlgInfo.sPathlgInfo.sFileiRightTrimDlgInfo.sPathlgInfo.sFilei3sssForOutputAsi1Nexti3
VB实例主
代码用VisualBasic可以针对不同的数据格式、不同的项目要求编制各种批量数据处理程序由于篇幅所限不再一一赘述仅将四等水准批处理检查程序的
VB主
代码例举如下供
学习和参考之用。
Dim视距差AsDouble后基辅差AsDouble高差差AsDouble用中文直接定义变量Dim前基辅差AsDoubleDim黑高差AsDouble红高差AsDoubleDim视距累积差AsDoublePrivateSubCommand1_ClickFori1ToDlgInfo.iCountOpenDlgInfo.sPathDlgInfo.sFileiForInputAsiOpenStrSubDlgInfo.sPathDlgInfo.sFileiRightTrimDlgInfo.sPathDlgInfo.sFilei3sssForOutputAsi1DoWhileNotEOFiLineInputirb1InputiaStr1aStr2aStr3InputibStr1bStr2bStr3bStr4视距差aStr1-bStr1视距累积差视距累积差视距差后基辅差aStr2kk1-aStr3前基辅差bStr2kk2-bStr3黑高差aStr2-bStr2红高差aStr3-bStr3IfaStr2/10200And300-aStr2/1023Thenst视距差超限EndIfIfAbs视距累积差10Thenslt视距累积差超限EndIfIfAbs后基辅差3Thenht基辅差超限EndIfIfAbs前基辅差3Thenqt基辅差超限EndIfIfAbs高差差5Thengct高差之差超限EndIfPrinti1aSpace3aStr1aStr2aStr3Space6ayyyPrinti1Space4bStr1bStr2bStr3bStr4Space4byyyll1aSpace3aStr1aStr2aStr3ll2Space4bStr1bStr2bStr3bStr4List1.AddItemll1List1.AddItemll2bStr3bStr4ll2Space4bStr1bStr2bStr3bStr4List1.AddItemll1第卷第期117List1.AddItemll2aa1GoTokaishi:LoopCloseiClosei1OpenText1.TextForInputAs1NextiMsgBox检查完成PrivateSubCommand4_Click打开数据文件WithCommonDialog1.CancelErrorTrue.MaxFileSize32767被打开的文件名尺寸设置为最大即32K.FlagscdlOFNHideReadOnlyOrcdlOFNAllowMulti-selectOrcdlOFNExplorer.DialogTitle选择文件.Filter所有类型的文件...ShowOpenDlgInfoGetDlgFileInfo.FileNameEndWithFori1ToDlgInfo.iCountList2.AddItemDlgInfo.sPathDlgInfo.sFileirrrdDlgInfo.sPathDlgInfo.sFileibbLenrrrdList3.AddItemLeftTrimrrrdbb-3sssErrHandle:按了取消按钮4结果输出程序可以直接打开几百个检查数据点击检查按钮在几十秒钟之内完成这些数据的检查。
大大缩短了人工检查数据的时间节约了纸张和打印成本。
程序运行完成并自动生成检查结果检查结果为与被检查数据文件名称相同的检查文本文件.sss。
用户可以直接打开生成的文本查看检查结果。
程序检查实例截图如图2所示。
图2检查结果显示截图5结语在平时的测绘工作中许多项目会有很多类似的大批量的、规律的、条理性的数据。
面对工期短、节奏快、要求高时候只要合理编制一个批量处理检查的程序一切问题就会迎刃而解了。
所以测量数据批量处理程序在当前的测绘领域及其他的一些工程领域都很值得推广和使用。
参考文献1求是科技.VisualBasic6.0程序设计与开发技术大全M.北京:人民邮电出版社2005-072高春燕李俊民刘彬彬.VisualBasic程序开发范例宝典M.北京:人民邮电出版社2006-073赛奎春李俊民.VisualBasic函数参考大全M.北京:人民邮电出版社2006-124秦永乐.VisualBasic测绘程序
设计M.郑州:黄河水利出版社2005-085美CoombsF著邓少鹍译.VisualBasic编程实用大全M.北京:中国水利水电出版社2005-056李士雨.工程数学基础-数据处理与数值计算M.北京:化学工业出版社2005-057佟彪.
VB语言与测量程序设计M.北京:中国电力出版社20078宋力杰.测量平差程序设计M.北京:国防工业出版社2009-019孔祥元郭际明.控制测量学M.武汉:武汉大学出版社2006-10作者简介祝昕刚测绘工程师从事测绘产品质检工作。
祝昕刚
VB编程实现测量数据文件的批量处理下期
论文导读余景波刘国林曹振坦等在提取地面形变信息中的应用简要介绍了基本原理、数据处理流程以双轨差分干涉测量处理卫星获取的巴姆地震灾区影像数据提取和分析同震形变场为例子说明了在提取地面形变信息中的应用。
第卷第期5ⅤKeywordsDataFusionEvaluationofGeoEye-1byCHENXueyangAbstract、、、、KeywordsRelationsofChineseFrontiersPopulationSpatialDistributionandTer-rainbyWANGLanhuiAbstractKeywordsCriticalTechniquesofDisaster-orientedRemoteSensingQuickMap-pingbyQUXinyuanAbstractKeywordsBatchProcessingofMeasuredDatawithVBProgrammingbyZHUXingangAbstractKeywordsResearchonEvaluationIndexSystemandQualityEvaluationofElec-tronicMapbyZHULipingAbstractKey
wordsDesignandDevelopmentofLandPriceEvaluationandManagementSystemBasedonGISbyZHAOYanAbstractKeywordsApplicationofGIS-basedSWMMtoUrbanDrainageSystembyFENGYanjieAbstractKeywordsComparisonandAnalysisofThreeExponentialFunctionModelsbyXUJinjunAbstractKeywordsDevelopmentandImplementationofLandConsolidationPlanningandDesignSoftwareBasedonGISbyCHENQingAbstractKeywords