Dieser Super-GAU passiert zum Glück nicht oft – ich habe es erst einmal erlebt. Wenn bei der Arbeit mit QGIS eine sogenannte Shapefile nicht mehr lesbar ist, kann das wochenlange Arbeit vernichten. Die gesamte Datengrundlage für einen Layer ist dann nicht mehr lesbar. Ohne aktuelles Backup wäre das dann sehr blöd. Zum Glück gibt es mit ShapeFile-Fixer ein winziges Tool, das die Shapefile wieder lesbar macht.
Dieser kurze Tipp passt gut in meine in der Entstehung befindlichen Reihe zum Thema „Super-GAU Datenverlust: Vor- und Nachsorge“. Bisher habe ich bereits über den Cloudservice Dropbox und das Datenwiederherstellungsprogramm Recuva geschrieben, mit denen man wichtige aktuelle Arbeiten oder Dokumente extra sichern- (ja, Dropbox ist wegen der amerikanischen Server umstritten!) bzw. sie wiederherstellen kann.
Programm-externe Speicherung in Shapefiles
Heute geht es um um ein sehr spezielles Problem: Shapefiles aus GIS-Anwendungen. QGIS und auch die kostenpflichtige GIS-Software ArcGIS speichern ihre Vektorlayer im gleichen Datenformat, sogenannten Shapefiles. Die Daten werden NICHT in das Programm importiert und dann innerhalb der Projektdatei gespeichert, wie zB. bei Photoshop oder Blender. Es werden nur Verknüpfungen zu separaten Dateien auf der Festplatte erstellt.
QGIS erstellt für jeden Vektorlayer einen ganzen Satz an Dateien, manchmal 5, manchmal sogar 6 Stück an der Zahl. Ich weiß nicht, wofür die im Einzelnen da sind, man sollte sie allerdings keinesfalls einfach aus Spaß löschen .. :D Die tatsächliche Shapefile, die die aufgenommenen Daten (also Punkte, Linien oder Polygone) enthält, und die man beim Import eines neuen Layers auswählt, ist unter diesen 5-6 Dateien die .shp-Datei.
Mir ist es kürzlich passiert, dass nach einem QGIS-Crash aus irgendeinem Grund eine .shx-Datei permanent gelöscht wurde. Zwar war die zugehörige .shp noch da, die nimmt QGIS aber nicht als gültige Shapefile an, wenn die .shx dazu fehlt. QGIS hat also den kompletten Layer einfach rausgeworfen. Und da steckten viele Stunden Arbeit drin. Dementsprechend verzweifelt habe ich nach einer Lösung gesucht.
Verlorene .shx-Dateien wiederherstellen
Glücklicherweise stellte sich raus, dass es Möglichkeiten und Tools gibt, die mit Hilfe der noch vorhandenen .shp die zugehörige .shx neu berechnen können. Einige der Lösungen habe ich nicht kapiert (man muss dabei mit der Python-Konsole oder so arbeiten..! Keine Ahnung >_<), und andere gingen einfach nicht.
Schließlich stieß ich auf das kleine Tool » ShapeFile Fixer, das der italienische GIS-Experte Jody Marca programmiert hat. Dieses Progrämmchen
- säubert Shapefiles
- behebt Fehler in den Shapefiles
- berechnet die .shx neu
Das geht in Sekundenbruchteilen und meine Erleichterung war sehr groß. Danach hat sich mein Layer wieder problemlos importieren lassen.
Ein Tool, das derartige Erleichterung verschaffen kann, muss dankend erwähnt werden!
Schreibe einen Kommentar