使用arcpy检查文件地理数据库的有效性


10

顾名思义,如何使用arcpy确定GDB文件是否有效?一种方法是,仅检查名称是否以结尾.gdb,但这不是一个可靠的方法。因为普通文件可以以结尾.gdb,因此GDB本质上是OS的文件夹。那我该怎么办呢?

Answers:


8

以下代码用于列出工作区(在这种情况下为文件地理数据库)。它不检查文件扩展名.gdb,而是在寻找其内部类型。这应该省略带有.gdb扩展名的目录,但实际上不是文件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

8

@Get Spatial的答案在某种程度上是正确的,但不能直接解决问题。所以回答我自己的问题:

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

它打印给定路径指向的对象的类型。对于文件夹,它打印Folder,对于地理数据库,它打印Workspace

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.