合并不同gdb下的相同要素_不同gdb,相同数据集合并

本文介绍了如何在GIS处理中合并存储在不同Geodatabase(GDB)中的相同数据集。通过使用Engine进行处理,确保每个GDB的FeatureClass数量和名称相同,然后使用Python进行合并。在10.2 ArcMap中执行时需要注意防止错误的合并结果。
摘要由CSDN通过智能技术生成

众所周知,数据处理是GIS中一项重要且繁琐的工作,处理数据的工具和方法也太多了,在做数据处理的时候,经常会遇到这样的问题:对存储在不同gdb中、并且数据集名称相同的数据进行合并处理:

如图:数据组织如下,每个gdb中都存储了一些列FeatureClass,(但gdb中的FeatureClass数量并不相同)

思路是:

1.先对每个gdb中的数据进行处理,使得每个gdb中的featureclass数量和名称相同。由于对Engine比较熟悉,这里我是用Engine进行处理的,具体代码如下:

private function Execute(){ //初始执行函数:

string templatePath = @"F:\testout";

DirectoryInfo directoryInfo = newDirectoryInfo(templatePath);

DirectoryInfo[] dirInfo =directoryInfo.GetDirectories();

string yy = dirInfo[0].Name;

string FeatureClassName = "ROALK_arc"; //FeatureClass名称,这里可以设置一个数组,存储所有的FeatureClass

for (int i = 0; i < dirInfo.Length; i++)

{

string gdbName =dirInfo[i].Name;

//打开filegdb

bool value = oper(@"F:\testout\" + gdbName, FeatureClassName);//判断FeatureClass是否存在

string path = @"F:\testout\" +gdbName;

if (value == false)

{

copyFeatureClass(path, FeatureClassName);

}

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值