Ниже описаны рекомендации по восстановлению поврежденного шейп-файла. Они перечислены в том порядке, в котором они должны быть выполнены. Распространенные причины повреждения включают сбой компьютера при сохранении изменений; добавление недопустимой геометрии, например петель; и изменение таблицы атрибутов с помощью другого программного обеспечения, такого как Microsoft Excel. Если перечисленные ниже рекомендации не восстанавливают шейп-файл, вернитесь к резервной копии.
- Используйте инструмент геообработки Проверить геометрию. О проблемах с данными сообщается во время выполнения инструмента или в выходной таблице. Просмотрите выходную таблицу после выполнения. Пустая таблица указывает на то, что инструмент не обнаружил плохой геометрии. Если сообщается о плохой геометрии, используйте инструмент геообработки Восстановить геометрию.
- Запустите инструмент Восстановить геометрию. После запуска инструмента Восстановить геометрию запустите инструмент Проверить геометрию, чтобы убедиться, что все поврежденные объекты были удалены. Повторите этот процесс столько раз, сколько необходимо.
- Экспортируйте данные в базу геоданных, затем скопируйте их в новый шейп-файл.
- Выберите все или несколько объектов и экспортируйте выбранные объекты в новый шейп-файл или класс пространственных объектов.
- Если данные находятся на сетевом диске, скопируйте их на локальный диск. Если данные находятся на локальном диске, попробуйте скопировать их в корневой каталог основного диска, например, C:\.
- Проверьте, нет ли недопустимых имен полей в таблице атрибутов. Имена полей могут содержать только 10 символов. Имя поля должно начинаться с буквы. Имена полей не должны содержать пробелов или специальных символов, за исключением символа нижнего подчеркивания.
- Имена файлов не должны содержать никаких специальных символов, за исключением символа нижнего подчеркивания. Пробелы в именах шейп-файлов работают в ArcGIS Desktop, но в целях тестирования переименуйте шейп-файл, чтобы в нем не было пробелов.
- Удалите все файлы индексов (пространственных, атрибутивных и геокодирования), проекций и метаданных в проводнике Windows. Это означает, что необходио удалить все файлы кроме .shp, .dbf и .shx. Сделайте копию каждого из этих файлов, прежде чем удалять их.
- Откройте шейп-файл на другом компьютере.
- Откройте шейп-файл с помощью другой версии программного приложения. Если его можно открыть, сохраните его как новый шейп-файл, экспортировав выбранные объекты в новый шейп-файл или класс пространственных объектов.
- Скопируйте данные в новый класс объектов с помощью простого загрузчика данных или скопировав объекты в сеанс редактирования ArcMap. Если шейп-файл не содержит большого количества объектов, скопируйте объекты по одному или группами, чтобы определить, повреждены ли определенные объекты. После копирования объектов сохраните внесенные изменения. Проверьте, устранена ли проблема.
- Если данные все еще не восстановлены, а в первых двух предложениях выше указаны идентификаторы объектов поврежденных записей, попробуйте удалить их вручную в сеансе редактирования.
- Импортируйте .dbf часть шейп-файла в Microsoft Excel и сохраните его как файл dBase 4. Не вносите никаких других изменений в файл.
- Попробуйте выполнить вычисление значений поля в ArcGIS Desktop с помощью калькулятора поля. Калькулятор поля может остановиться на поврежденной записи.
- Удалите все поля в шейп-файле, кроме FID, Shape, и одного поля атрибута (шейп-файлы должны содержать хотя бы одно поле атрибута). Если проблема не устранена, добавьте новое строковое поле и удалите последнее оставшееся поле атрибутов. Если проблема решена, это указывает на проблему с одним из полей. Вернитесь к шейп-файлу резервной копии и используйте процесс исключения, чтобы определить поврежденное поле.