Sprawdź poprawność geobazy danych pliku za pomocą arcpy

10

Jak sugeruje tytuł, jak mogę sprawdzić, czy plik GDB jest prawidłowy przy użyciu arcpy? Jedno podejście polega tylko na sprawdzeniu, czy nazwa się kończy .gdb, ale to nie jest solidne podejście. Ponieważ normalny plik może być zakończony .gdb, gdzie GDB są zasadniczo folderami do systemu operacyjnego. Jak mogę to zrobić?

użytkownik
źródło

Odpowiedzi:

8

Poniższy kod służy do wyświetlania listy obszarów roboczych , w tym przypadku do plików geobazy. Nie sprawdza rozszerzenia pliku .gdb, ale szuka jego typu wewnętrznego. Powinno to pomijać katalogi z .gdbrozszerzeniem, ale tak naprawdę nie są to pliki GDB.

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
Uzyskaj przestrzenny
źródło
8

Gdzie odpowiedź @ Get Spatial jest częściowo poprawna, ale nie rozwiązuje problemu bezpośrednio. Odpowiadając na moje pytanie:

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

Wyświetla typ obiektu, który kieruje dana ścieżka. W przypadku folderów drukuje, Folderaw przypadku geobaz danych drukujeWorkspace

użytkownik
źródło