Java读取工作空间下所有shp文件名

List lists = new ArrayList();
IWorkspaceFactory factory = new ShapefileWorkspaceFactoryClass();
IWorkspace pworkspace = factory.OpenFromFile(xmlOutDir, 0);
IEnumDatasetName datasetName = pworkspace.getDatasetNames(esriDatasetType.esriDTFeatureClass); //筛选出shp
IDatasetName shpdatasetName = datasetName.Next(); //获取的数据集名称无后缀名
while (shpdatasetName != null)
{
lists.add(shpdatasetName.getName());
shpdatasetName = datasetName.Next();
}


tips:

  • getDatasetNames(int datasetType);同理getDatasets(int datasetType);
  • 主要用到esriDatasetType.esriDTFeatureClass//筛选文件类型

附上佳作:
http://blog.csdn.net/yaoxiaochuang/article/details/47720325


拓展:
Feature classes
存储了简单的要素,他可以在featureDataset内也可以在dataet外,在外面的featureclass被称作独立的
featureclass。存储了拓扑关系的featureclass必须包含在dataset中以确保他们是统一的空间索引(spatial
reference)。
一个
FeatureDataset是一个仅存在于geodatabase工作空间的dataset。他的所有dataset都是geodatabase的一部分.当编程时记得featureclass可能是或不是一个featuredataset的一部分。
一个geodatabase的每一个dataset都必须有独一无二的名字
。特别是在一个geodatabase中,每个featureclass也必须有一个独一无二的名字,无论它存在于那个dataset。这不同于文件系统,两个文件夹可以有同一个名字的文件。
一个workspace的IFeatureWorkspace
接口的OpenFeatureClass方法
能够打开这个works脾气所有的featureclass。包括独立的featureclass和存储在featuredataset中featureclass。
另外一个 FeatureDataset
存储的featureclass都是同一个空间索引。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

来了-小老弟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值