今天我完成了shapefile文件中单点的读取,首先我讲讲shapefile的结构.
1.
.shp 文件 固定文件头(100字节)+ 变长的记录文件
/ /
/ /
固定文件头 (8字节) 变长的记录内容
/ /
/ /
记录数(从1开始 4字节) 变长的记录内容长度(4字节)
.shx文件 固定文件头(100字节 )+ 固定的长度(8字节)
/ /
/ /
每个shp对象的距文件头的偏移量(4字节) 变长的记录内容长度(4字节)
其中 .shp和.shx的文件头相等同 2个文件的变长的记录内容长度(4字节)也一样
关于点的结构如下:
位置 域 值 类型 数目 字节顺序
0字节 shape类型 1 整数 1 小
4字节 X X 双精度 1 小
12字节 Y Y 双精度 1 小
按照流的顺序 先读完文件头 然后读变长的记录文件,注意字节的控制.