文档地址
ESRI Shapefile Technical Description
shapefile文件结构
必须的文件
- *.shp 主文件,存储空间坐标数据
- *.dbf 属性表文件,存储要素属性数据
- *.shx 索引文件
*.shp 文件结构
二进制文件
数据类型
- Integer (4 bytes) :有符号的32位整数
- Double(8 bytes): 有符号双精度浮点数64位,IEEE标准
文件大致结构
大小 | 内容说明 |
---|---|
100 bytes | 文件头:保存文件标识,长度,版本,几何的最大最小值等 |
X bytes | 记录内容:所有记录顺序存储 |
文件头
记录
大小 | 内容说明 |
---|---|
4 bytes | 记录编号 |
4 bytes | 记录长度 |
4 bytes | 记录的几何类型(0,1,3,5,8,11,13,15,18,21,23,25,28,31) |
X bytes | 坐标数据:这里的结构依据“记录的几何类型”的不同而不同 |
不同记录类型对应的不同坐标数据存储结构
PolygonZ (15)
z和m坐标与x,y坐标是分开存储的。
大小 | 说明 |
---|---|
4 bytes | 记录编号 |
4 bytes | 记录长度 |
4 bytes | 值:15 |
4*8 bytes | Box 的两个坐标 |
4 bytes | 几何要素部件个数(NumParts) : X |
4 bytes | 几何要素点个数(NumPoints) :Y |
X*4 bytes | 部件数据,Integer数组,表示各个部件开始的点的索引 |
Y28 bytes | 点坐标数据,x,y坐标 |
2*8 bytes | Z 坐标范围 |
Y*8 bytes | 所有点的Z坐标值 |
2*8 bytes | M 值范围, |
Y*8 bytes | 所有点的M值 |