ここでは、破損したシェープファイルの復旧に役立つさまざまなオプションについて説明します。一般に、シェープファイルの破損は、編集内容を保存するときにコンピューターがクラッシュした、リボン形などの不正なジオメトリが追加された、または Microsoft Excel などの別のソフトウェアで属性テーブルを変更したことなどが原因で発生します。ここで説明する手順ではシェープファイルが復旧しない場合は、バックアップを復元する必要があります。
シェープファイルの復旧に使用するオプション
- [ジオメトリのチェック] ツールを使用します。ツールの実行中に、または出力テーブルで、データの問題が報告されます。ツールの実行後に出力テーブルを表示します。テーブルが空の場合は、不正なジオメトリが検出されなかったことを意味します。不正なジオメトリが報告された場合は、[ジオメトリの修正] ツールを使用します。
- [ジオメトリの修正] ツールを使用してみます。
- データをジオデータベースにコピーしてみます。その後、新しいシェープファイルにデータをコピーしてみます。
- すべてのフィーチャまたは一部のフィーチャを選択し、選択フィーチャを新しいシェープファイルまたはフィーチャクラスにエクスポートしてみます。
- データがネットワーク ドライブ上にある場合は、ローカル ドライブにコピーします。データがローカル ドライブにある場合は、C:\ などの主要ドライブのルートにコピーします。
- 属性テーブルで不正なフィールド名がないか確認します。フィールド名の長さは最大で 10 文字に制限されています。フィールド名は数字で始まってはなりません。アンダースコア文字以外の特殊文字またはスペースが含まれていてはなりません。
- ファイル名には、アンダースコア文字以外の特殊文字が含まれていてはなりません。原則として、ArcGIS for Desktop ではシェープファイル名にスペースを使用することができますが、テスト目的で、シェープファイルの名前をスペースのない名前に変更します。
- Windows エクスプローラーで、すべてのインデックス (空間、属性、およびジオコーディング) とメタデータ ファイルを削除します。つまり、.shp、.dbf、および .shx 以外のすべてのファイルを削除します。これらのファイルを削除する前に、それぞれのコピーを作成してください。
- 別のコンピューターでシェープファイルを開いてみます。
- 別のソフトウェア アプリケーション (できれば ArcView 3.x) でシェープファイルを開いてみます。
- 単純なデータ ローダを使用して、または編集セッションでコピーと貼り付けを行うことにより、データを別のフィーチャクラスに読み込んでみます。
- データがまだ修復されておらず、最初の 2 つの方法で不正なレコードのフィーチャ ID が報告された場合は、編集セッションでそれらを手動で削除してください。
- シェープファイルの .dbf 部分を Microsoft Excel に読み込み、dBASE 4 ファイルとして保存してみます。ファイルに対してそれ以外の変更を行わないでください。
- ArcGIS for Desktop または ArcView 3.x の [フィールド演算] を使用して、フィールド演算を実行してみます。フィールド演算は破損したレコードで停止します。