美文网首页
如何合并不同.gdb中的多个要素(arcgis或fme)

如何合并不同.gdb中的多个要素(arcgis或fme)

作者: 松鼠敲果壳 | 来源:发表于2021-01-30 17:47 被阅读0次

    最初的目的

    把从全国地理信息资源目录服务系统网站所下载的分成片的1:100万数据集,合并成一个完整的数据集。一共77个gdb文件,每个gdb文件夹中会有数个要素,但并不是所有gdb中的要素都齐全。

    打算尝试的方法

    第一种:ArcGIS自带工具箱中的快速导入

    ArcGIS打不开“快速导入”功能,并且会显示一个红叉叉在图标上。
    原因不详。不知道是电脑内存还是什么其他原因。
    可以参考这个教程。

    第二种:ArcGIS的python

    这个方法我参考了很多博客,发现很多都类似,就选了一个来尝试。
    代码如下

    中间曾因为编码问题报错过一次,所以我的代码里会跟网上提到的不太一样,增加了 .encode("utf-8")

    import os
    import sys
    import arcpy
    inpath = r"G:\软件分类\作图\ArcGIS\全国地理信息资源目录\zip"
    outgdb = r"G:\软件分类\作图\ArcGIS\全国地理信息资源目录\one.gdb"
    arcpy.env.workspace = inpath
    workspaces = arcpy.ListWorkspaces("*","fileGDB")
    for j, workspace in enumerate(workspaces):
         print('processing:' + workspace)
         arcpy.env.workspace = workspace
         featureclasses = arcpy.ListFeatureClasses()
         for i,fc in enumerate(featureclasses):
             output = os.path.join(outgdb, os.path.splitext(fc)[0].encode("utf-8"))
             arcpy.Append_management(fc,output)
    

    结果报错。内容如下:

    Runtime error Traceback (most recent call last): File "<string>", line 19, in <module> File "c:\program files (x86)\arcgis\desktop10.5\arcpy\arcpy\management.py", line 4240, in Append raise e ExecuteError: ERROR 000732: 目标数据集: 数据集 G:\one.gdb\RESP 不存在或不受支持

    第三种:FME软件合并

    软件下载。
    尝试过总是在报错。
    换了GIS思维的教程提供的数据就能顺利合并。猜想可能是我自己的数据集有问题吧。

    最后放弃了批量合并数据,打算手动合并数据了

    相关文章

      网友评论

          本文标题:如何合并不同.gdb中的多个要素(arcgis或fme)

          本文链接:https://www.haomeiwen.com/subject/prdktltx.html