用mapbasic在mapinfo下开发GIS应用系统批量文件名的处理方法

济南大学学报(自然科学版)第18卷第2期2004年6月Vol.18No.2JOURNALOFJINANUNIVERSITY(Sci.Tech1)Jun.2004:1671-3559(2004)02-0174-02用mapbasic在mapinfo下开发GIS应用系统批量文件名的处理方法段琪庆1,赵军1,赵帅2(1.济南大学土木建筑学院山东济南250022;2.山东财政学院计算机系,山东济南250014)摘要:论述了用mapbasic在mapinfo下开发应用系统过程中对于批量文件数据的读取遇到的问题,并提出了解决的办法。关键词:mapinfo表;mapbasic;变量表名据项的特定类型的信息,栅格表与数据表不同,它没有记录字段和索引等表结构,他只是一种能在地图窗口中显示的图像(对元数据的分析与链接除外)1。本文探讨在mapinfo中的单纯的数据表或者是图形和数据的结合表,在mapinfo中创建一个表,将会产生以下五个文件:①文件名.tab扩展名为tab的文件,描述表的数据结构。:TP317.4文献标识码:A计算机最大的优势是对相同数据结构类型的数据利用统一程序进行处理,区别不同的数据是表名(文件名)和数据内容的不同。一般情况下,表名是预先知道的,在程序编写时可认为是常量,表中的大量记录和数据项是变化的,可以用数组变量或自定义数据结构进行读写,对批量表进行处理时,会遇到不同表名,要保持程序的通用性,其表名(文件名)的设置也应该是变化的,这是编程的基本问题,在用mapbasic编程时,这个问题就比较麻烦。本文在工程实践中,探索出三种解决办法。②文件名.map扩展名为图形对象与数据关联的文件,也可以是纯数据文件。③文件名.dat/wks/dbf/xls。④文件名.id图形对象文件的索引,作用是链接数据和图形对象。⑤文件名.ind索引文件。1.2mapinfo表的数据构成形式2mapinfo纯数据表的结构形式如表1,以管道管理系统为例。1mapinfo表的基本构成1.1mapinfo表的文件构成mapinfo是对地图进行处理、分析、查询、编辑的平台工具,也是近几年来在GIS应用与开发中应用较为广泛的系统。他首先是处理地图(或地理)对象,而后是对地理对象的属性进行处理,所以mapin2fo表的概念不同于日常所说的表,也不同于数据库中的表。表可分为数据表和栅格表,数据表又分为包含图形对象的数据表和不包含图形对象的数据表,包含图形对象的数据表是图形和数据的有机结表1纯数据表格X坐标Y坐标管材管径30高程64.7埋深1.264056.884356.4钢管这种数据表格和通常意义的数据表格(如DBASE、FOXPRO等)相同,这种表格可以用常规的作业工具(Edit、Excel等)修改,一旦修改,在地图窗口必须重新进行地理编码而使其能够地图化,当然如果本表格只是为了分析地理数据也可以用OpenFile从句打开,不必将数据进行地理化。表2比表1多了一项OBJ,这是用于连接的图形对象。X坐标Y坐标管材管径高程埋深OBJ收稿日期:2003-10-31作者简介:段琪庆(1964-),男,山东栖霞人,济南大学土木建64056.884356.4钢管3064.71.2LINETYPENATIVECharset”WindowsSimpChinese”OpenTablecatalog$+”表.tab”Browse3From表N=TableInfo(表,TAB-INFO-NROWS)FORI=1TONFetchrecIFrom表2用mapbasic在mapinfo下开发时对于从表中读数据项遇到的问题mapbasic是由mapinfo公司开发的一种十分想的语言工具,它是一种完全结构化和模块化的语言,它能够满足数据库、图形操作的要求,在很多领域内有广泛的应用。2.1用mapbasic对mapinfo开发对表中读取数据的限制用mapbasic在mapinfo下开发GIS应用系统时,对于批量表格不能用字符串变量来表示文件名,这在应用中十分不便。如:表名为“给水管线”,一般用下列语句处理:name$=“给水管线”,“给水管线”是字符串常量。OpenTablename$②充分利用不定表的变量alias3,4DimA,B,C,DASaliasC=CD$(R)+”.”+”COL”+4上例中A,B,C,D的变量是随着表中列类型的变化而变化的,CD$(R)是目录名+表名的字符串也就是说可以用此变量读取任意类型的数据,而不必担心类型的不匹配问题。③充分利用mapbasic语言规则中的别名来处理变量文件名的问题OpenTablefile-nameasnameInteractiveTable-alias=name.col1{name.col2}file-name:表名1name:表别名以上三种方法是利用mapbasic开发GIS比较实用的解决变量文件名的方法。Ifnot(TAB-INFO-TYPE,TAB-INFO-OPEN)Note”文件没有打开”elseFetchFirstFromname$O...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供参考,付费前请自行鉴别。
3、如文档内容存在侵犯商业秘密、侵犯著作权等,请点击“举报”。

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

客服邮箱:

biganzikefu@outlook.com

所有的文档都被视为“模板”,用于写作参考,下载前须认真查看,确认无误后再购买;

文档大部份都是可以预览的,笔杆子文库无法对文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;

文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为依据;

如果您还有什么不清楚的或需要我们协助,可以联系客服邮箱:

biganzikefu@outlook.com

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

笔杆子文秘
机构认证
内容提供者

为您提供优质文档,供您参考!

确认删除?