一、SHP文件

Shapefile文件(简称SHP)作为ESRI一种经典的数据格式,被很多其他软件所支持,如CAD、MapGIS等,虽然也有一些限制(如无法进行拓扑分析、字段长度为10个字符等),但其仍然是广泛使用的空间数据格式。

用得多了,有时也会遇到出错的时候。

Error: Number of shapes does not match number of table records。

形状数与表记录数不一致。

二、损坏原因

如ESRI帮助文档上说常见损坏原因,并提出了解决方案:

(1)保存编辑内容时计算机崩溃

这是最常见的现象。由于软件版本不稳定或数据量大或突然断点很可能造成编辑shp文件形成损坏。

(2)添加非法几何

任何数据库都可以对其数据进行结构定义。如果有非法的几何 将导致shp文件损坏。例如,蝴蝶结。

(3)使用其他软件修改属性表

SHP文件是由多个文件组成,其中记录属性的dbf文件是不可缺少的,但如果用其他软件编辑过(例如,Microsoft Excel)也会造成文件损坏。

三、修复方法

下面是官网给出的修复方法,非常全面

(1)    使用ArcToolBox > Data Management Tools > Features中的Check Geometry工具。此工具执行时数据的问题会被报告,或存在于输出表中。在执行后查看输出表。如果表是空的,证明没有找到坏的几何关系。如果报告有坏的几何关系,使用下面的Repair Geometry工具。

(2)    运行ArcToolBox > Data Management Tools > Features中的Repair Geometry工具。在运行后,返回再次运行Check Geometry工具以确定所有的损坏要素都被移除。依据需要往复运行Check Geometry/Repair Geometry。

(3)    导出数据岛geodatabase中,然后把他们复制到新shapefile中。

(4)    如果数据在网络驱动器上,把它复制到本地磁盘上。如果数据在本地驱动器上,把它复制到主驱动器的根目录下:例如,C:\

(5)    检查属性表中的非法字段名。字段名最多只能有10个字符,且以字母开头,不能包含空格或特殊字符,除了下划线以外。

(6)    除了下划线以外,文件名不能包含空格或特殊字符。一般来说,包含有空格的shapefile文件名可以在ArcGIS 9.x中起作用,然而为了测试请重命名shapefile是指不含空格。

(7)    在Windows资源管理器中删除所有索引(空间、属性和地理编码),投影和元数据文件。也就是删除所有的文件仅保留.shp,.dbf,.shx文件。注意在改动文件前做好备份。

(8)    尝试在其他电脑上操作这些shapefile

(9)    在其他软件中打开shapefile,最好是ArcView 3.x。如果能在ArcView 3.x中打开,尝试保存至新的shapefile,Theme > Convert To Shapefile。

(10)或者使用simple data loader或者将数据复制到ArcMap编辑进程中,将数据复制到新的要素类中。如果你的shapefile不包含很多的要素,可以一次拷贝,否则分组拷贝可能损坏的数据。当拷贝过程结束后,保存编辑,查看问题是否以去除。

(11)如果数据仍未被修复,并且Check Geometry/Repair Geometry工具报告了要素ID和损坏记录,请手动清除这些损坏的数据。

(12)在ArcGIS和ArcView 3.x中使用字段计算器计算计算字段值。计算可能停在损坏的记录上。检查损坏损坏的shapefile的属性表并确认。例如,你的shapefile有1000条记录,如果字段计算器在第750条停下来,哪门第750条或751条可能就是损坏的。要删除损坏的条目,打开ArcMap编辑,拷贝除了坏条目以外的所有行至新的shapefile中,或者尝试手动删除损坏条目。

(13)删除除FID,Shape外的所有字段,并保留一个属性字段(shapefile必须要有一个属性字段)。如果问题依然存在,添加一个新字符串字段,并删除保留的属性字段。如果问题消失,这意味着是那个字段的问题。后面你就知道该怎么做了。

(14)使用Shapefile Repaier Utility

(15)使用Shapefile Repair Utility(不要与Shapefile Repaier Utility弄混)

(16)使用FunkFinder

(17)下载并运行CleanShapefile utility(只针对ArcGIS 8.3)

四、实例

先尝试使用"检查几何",无效,因为根本就打不开,所以没法检查。

再尝试复制一下数据:

问题出来了,形状数与表记录数不一致!(注意与多部件是有区别的)。可以造成的原因是编辑异常或通过其他方式修改过dbf文件。

最后shapech工具修复了SHP文件。

操作方法:先备份数据,然后加载Shapefile数据,读取数据信息,修复shx,再修复dbf。

来源:cnblogs

作者:我也是个傻瓜

地址:https://www.cnblogs.com/liweis/

本资源均为通过网络等公开合法渠道获取的资料,仅作为学习交流之用,其版权归原作者或原出版社所有,不对所涉及的版权问题负法律责任。如原作者认为侵权,请联系我们,我们立即删除文章,谢谢!

- END -

7.72GB ARCGIS  ERDAS  ENVI干货教程网盘下载ArcGIS Pro 关于地震数据可视化制作流程(附练习数据下载)在SHP, DWG, DXF, KML/KMZ矢量数据中自由行走ArcGIS制图技巧—边框的选择ArcGIS综合制图.doc(文档可下载)ArcGIS土地利用制图流程(附练习数据)戳原文,更有料!

arcgis几何修复有作用吗_修复损坏的 shapefile相关推荐

  1. 修复计算机英语翻译,修复用英语怎么说_修复英文怎么说_修复英文翻译_趣词词典...

    1. 谁应该修复它?Who should fix it? www.ibm.com2. 您将在下一步中修复此问题.You will fix this in the next step. www.ibm. ...

  2. arcgis几何修复有作用吗_ArcGIS修复几何错误

    几何错误常存在于shapefile以及存储在个人地理数据库或文件地理数据库的要素类,而当数据不满足ArcGIS的规范时,就会遇到各种无响应和奔溃. 几何错误通常有:(查看原帮助文档) 1.短线段-有些 ...

  3. 修复mysql数据库供应商_修复MYSQL数据库

    whereis mysql cd /usr/local/mysql mysqlcheck -u root -p --auto-repair --check --optimize --all-datab ...

  4. 修复iis解析漏洞_修复典型的iis 10漏洞并进行安全审核

    修复iis解析漏洞 You will generally be in good shape using IIS 10 to securely host websites, but there are ...

  5. arcgis几何修复有作用吗_ARCGIS几何修复使用技巧

    ARCGIS 几何修复问题 最近处理数据, 是将一些分幅的数据进行拼接,很多要素被分成了一段一段的.于是, 采用 Arcmap 中的 merge 工具进行合并,但是,在用 merge 工具合并一些同类 ...

  6. pla3d打印材料密度_口腔修复体制作用3D打印金属粉末的成型工艺与性能控制要点概述...

    在传统口腔修复体的制作过程中,制作工艺繁琐,制作周期长,加工过程中依赖人力操作,金属材料在制作过程中易发生变形,难以控制尺寸精度,使患者舒适度下降.而采用3D打印技术生产的修复体可根据患者自身进行定制 ...

  7. 快捷方式修复_Mac上的屏幕截图不起作用该如何修复?

    屏幕截图是Mac提供的内置功能,很少有它不起作用.但是由于某些意外的设置或硬件问题,Mac上的屏幕截图有时无法正常工作,这里提供的是Mac上的屏幕截图不起作用该如何修复? 1.在Mac上启用屏幕快照快 ...

  8. 计算机中丢失msc,mscvr120.dll32位/64位版_修复计算机中丢失msvcr120.dll

    mscvr120.dll32位/64位版_修复计算机中丢失msvcr120.dll mscvr120.dll是系统的非常重要的一个文件,相信很多的人都是遇到文件丢失的情况,这个时候就需要你在下载一个d ...

  9. ubuntu系统损坏修复_修复损坏的ubuntu gui

    ubuntu系统损坏修复 I switch between work and Personal Computer a lot. I recently noticed that I haven't us ...

最新文章

  1. 厦门理工计算机研究生调剂,2018年厦门理工大学考研预调剂信息公布
  2. 《强化学习周刊》第7期:强化学习应用之游戏
  3. Apache Web服务器访问控制机制全解析
  4. python代码块-python代码块
  5. 笔迹鉴别(5) —— 笔迹判别
  6. Linux学习:shell 命令(用户管理)
  7. AI:初学者如何从零学习人工智能?看完你就懂了
  8. python spacy [E050] Can't find model 'en_core_web_sm'
  9. Python 异常(Exception)
  10. 动态心电图信息存储(三)
  11. 常用DOS命令(必会基础知识)
  12. 网狐荣耀6701/6801 手机打包发布
  13. 工作之RF功能开发入门
  14. 微信/QQ/TIM消息防撤回最新补丁
  15. android studio设置安卓版本,android studio怎么设置android版本?
  16. 最热门的十种编程语言,总有一种适合你
  17. protoc-gen-go 安装
  18. VOC数据集制作 滑窗切分图片 单通道标签调色板
  19. 计算机考研跨审计好跨嘛,跨专业考研,快来看看你符不符合条件
  20. APP后台服务器阿里云Win系统服务器搭建的方法

热门文章

  1. github注册账号一直验证失败
  2. RuntimeError: DataLoader worker (pid(s) 13512, 280, 21040) exited unexpectedly
  3. wget for windows 下载与安装
  4. 或者是修改服务器时间,修改云服务器时间设置
  5. 电路板上的插头怎么拔下来_空调插头一直不拔费电吗?实测一周竟然发现了真相!...
  6. wpf 点击按钮弹出选择框_WPF-PopupWindow wpf右下角弹出框,通过按钮调用,类似QQ CSharp C#编程 238万源代码下载- www.pudn.com...
  7. 消息队列(2):常见的消息队列协议
  8. dubbo web工程示例_分布式开发-Zooker+dubbo入门-Demo
  9. Linux命令英文全称解释【转载】
  10. JAVA入门级教学之(classpath的配置)