Überprüfen Sie die Gültigkeit der Datei-Geodatabase mit arcpy


10

Wie der Titel schon sagt, wie kann ich feststellen, ob eine GDB-Datei mit arcpy gültig ist? Ein Ansatz besteht darin, nur zu überprüfen, ob der Name mit endet .gdb, aber das ist kein robuster Ansatz. Weil eine normale Datei mit beendet werden kann .gdb, wobei GDBs im Wesentlichen Ordner für das Betriebssystem sind. Wie kann ich das machen?

Antworten:


8

Der folgende Code wird zum Auflisten von Arbeitsbereichen verwendet , in diesem Fall von Datei-Geodatabases. Es wird nicht nach der Dateierweiterung .gdbgesucht, sondern nach dem internen Typ. Dies sollte Verzeichnisse mit einer .gdbErweiterung weglassen, die aber eigentlich keine File GDBs sind.

import arcpy

arcpy.env.workspace = "C:/Data" 

# List all file geodatabases in the current workspace 
# 
workspaces = arcpy.ListWorkspaces("*", "FileGDB")
for workspace in workspaces: 
    # Print workspace name
    #
    print workspace

8

Die Antwort von @Get Spatial ist teilweise richtig, löst das Problem jedoch nicht direkt. Beantworte also meine eigene Frage:

desc = arcpy.Describe(filePath)
print desc.dataType

Es gibt den Typ des Objekts aus, das der angegebene Pfad leitet. Für Ordner wird gedruckt Folderund für Geodatabases wird gedrucktWorkspace

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.