在使用ArcGIS编辑shapefile文件时,有可能遇上忽然电脑崩了、软件崩了等突发情况,这时再重新打开文件,加载shp文件时,就可能会遇上下面的错误
错误的原因明显,就是它提示的—— 形状数与记录表数不一致
-
比如你图上有100个多边形,但是dbf表却只有99个记录数;或者你图上有100个多边形,dbf表却有101个记录数。在一般因为软件或电脑崩溃情况下产生的形状数和记录表数不匹配的问题,基本都dbf表是多了一个或者少了一个记录。那我们要想打开这个shp文件,就可以在这两种情况中试探。
-
所以我们需要的是编辑dbf表。dbf表在excel中也能打开,但是修改了保存就成了问题,所以我们需要一个dbf的编辑工具来帮助我们,这里使用的是DBF viewer 2000(链接:https://pan.baidu.com/s/1emUPPi225C1AH6orMIBeZw
提取码:wuac )。
-
安装流程:解压→运行DBFVIEW原版.EXE,最后finish界面的√取消掉,完成→复制dbview.exe到安装路径中进行覆盖→OK
现在进行修复工作:
-
将shapefile的dbf表复制两份,三份dbf表一份做备用,一份加记录,一份删记录。
-
打开DBF viewer 2000,打开一份dbf表的备份,姑且叫dbf(+),添加一条数据。
-
修改了不用保存,没有保存,关闭就行了。然后打开另一份bdf表,姑且叫做dbf(-),我们删除最后一条数据,除了删除记录还要进行物理删除。
-
完成后将3个dbf表都放在shp的同一个文件夹之外,依次将修改过的两个dbf表放入shp所在的文件夹,改为和shp文件同名的dbf文件。
-
最后尝试在ArcGIS中打开,一般来说两次尝试中会有一次可以打开。