Arcpy 合并一个文件夹下的FileGDB
策略:先创建一个GDB,将遍历到的第一个GDB里面所有的要素图层转化到新创建的GDB中,以后遍历到的GDB进行追加就行了,代码如下:
import arcpy,os
def MergeFileGDB(inPath, outPath, outName):
arcpy.env.workspace = inPath
mergeFilePath = outPath + os.sep + outName
print mergeFilePath
#获得所有的FileGDB
workspaces = arcpy.ListWorkspaces("*", "FileGDB")
for workspace in workspaces:
print(workspace)
arcpy.env.workspace = workspace
mergeFileExist = os.path.exists(mergeFilePath)
if mergeFileExist:
featureclasses = arcpy.ListFeatureClasses()
for fc in featureclasses:
print(fc)
if fc == "LCA":
arcpy.Append_management(fc, os.path.join(outPath + os.sep + outName, os.path.splitext(fc)[0]),"TEST","","")
#arcpy.Merge_management(fc, os.path.join(outPath + os.sep + outName , os.path.splitext(fc)[0]))
break
else:
continue
else:
arcpy.CreateFileGDB_management(outPath, outName)
featureclasses = arcpy.ListFeatureClasses()
for fc in featureclasses:
arcpy.FeatureClassToFeatureClass_conversion(fc, outPath + os.sep + outName, os.path.splitext(fc)[0])
in_file = r"D:\WHResults"
out_location = r"D:"
out_name = "GHMerge.gdb"
MergeFileGDB(in_file, out_location,out_name)
转载自:https://blog.csdn.net/sprintwater/article/details/38456579