文档库 最新最全的文档下载
当前位置:文档库 › shp文件格式

shp文件格式

shp文件格式
shp文件格式

shp文件格式

SDE,ARC/INFO,PC ARC/INFO,Data Automation Kit(DAK)和ArcCAD软件提供了shape 到coverage的数据转换器,ARC/INFO同样提供了coverage到shape的转换器。为了和其他数据格式交换,shape文件的格式在本报告中被出版。其他数据流,比如来自全球定位系统(GPS)接收机的数据能同样被存为shape文件或X,Y事件表。

Shape文件技术描述计算机程序能通过使用本节的技术描述来产生,读,写shape文件。一个ESRI的shape文件包括一个主文件,一个索引文件,和一个dBASE表。主文件是一个直接存取,变量记录长度文件,其中每个记录描述一个有它自己的vertices列表的shape。在索引文件中,每个记录包含对应主文件记录离主文件头开始的偏移,dBASE表包含一feature一个记录的feature的特征。几何和属性间的一一对应关系是基于记录数目的。在dBASE文件中的属性记录必须和主文件中的记录是相同顺序的。

命名习惯所有文件名都符合8.3命名习惯。主文件,索引文件和dBASE文件有相同的前缀。前缀必须是由字符或数字(a-Z,0-9)开始,后跟0到7个字符(a-Z,0-9,_,)主文件的后缀是.shp,索引文件的后缀是.shx,dBASE表的后缀是.dbf。文件名中的所有字母在对文件名敏感的操作系统中都是小写的。

例子

主文件:counties.shp 索引文件:counties.shx dBASE表:ounties.dbf数字类型一个shape文件存储整数和双精度数,本文档的余数指以下类型:

整数:有符号32位整数(4字节)

双精度:有符号64位IEEE双精度浮点数(8字节)浮点数必须是数字的值。负无穷,正无穷和非数字(NaN)值在shape文件不被允许。然而shape文件支持'没有数据'的值这样的概念,但是目前只用于衡量。某些小于-1038被shape文件读取程序用来代表'没有数据'的值。

下面的第一节描述shape文件的总体结构和组织。第二节描述shape文件支持的每种shape 类型的记录内容。

主文件的组织

主文件(.shp)由固定长度的文件头和接着的变长度记录组成。每个变长度记录是由固定长度的记录头和接着的变长度记录内容组成。图1图解了主文件的结构。

图1 主文件的结构

文件头

记录头记录内容

记录头记录内容

记录头记录内容

记录头记录内容

……

……

记录头记录内容

Shape文件中所有的内容可以被分为二类:

与数据相关的:

。主文件记录内容

。主文件头的数据描述域(Shape 类型,边界盒等)

与文件管理相关的:

。文件和记录长度

。记录偏移等

整数和双精度整数在文件头中组成数据描述域,在主文件的记录内容是小ndian(PC或Intel)字节顺序。组成文件的其余部分和文件管理的整数和双精度浮点数是大endian(Sun 或Motorola)字节顺序。

主文件头

主文件头100字节长。表1显示带有字节位置,值,类型和字节顺序的文件头中的域。在此表中,位置是相对于文件的开始。

表1 主文件头的描述

位置域值类型字节顺序

0字节文件代码 9994 整数大

4字节未被使用 0 整数大

8字节未被使用 0 整数大

12字节未被使用 0 整数大

16字节未被使用 0 整数大

20字节未被使用 0 整数大

24字节文件长度文件长度整数大

28字节版本 1000 整数小

32字节 Shape类型 Shape类型整数小

36字节边界盒 Xmin 双精度小

44字节边界盒 Ymin 双精度小

52字节边界盒 Xmax 双精度小

60字节边界盒 Ymax 双精度小

68字节* 边界盒 Zmin 双精度小

76字节* 边界盒 Zmax 双精度小

84字节* 边界盒 Mmin 双精度小

92字节* 边界盒 Mmax 双精度小

*未被使用,值为0.0,若没有被衡量或是Z轴。

文件长度的值是在16位字下文件的总长度(包括组成文件头的50个16位字)。在shape 文件中的所有非空shape被需要是同种shape类型。Shape类型的值如下:

相关文档