【发布时间】:2017-10-04 19:43:39
【问题描述】:
我已经实现了 GeoTools 查询教程。有人可以告诉我,如何一次在两个形状文件中应用查询并将结果保存在新的形状文件或 csv 文件中。
或者我什至可以像查询教程中所做的那样将单个形状文件的查询结果保存在新的形状文件或 csv 文件中?
【问题讨论】:
我已经实现了 GeoTools 查询教程。有人可以告诉我,如何一次在两个形状文件中应用查询并将结果保存在新的形状文件或 csv 文件中。
或者我什至可以像查询教程中所做的那样将单个形状文件的查询结果保存在新的形状文件或 csv 文件中?
【问题讨论】:
您可以将 Query 应用到任意数量的 shapefile 中,只需遍历它们并继续添加到存储答案的特征集合中。
所以在伪代码中:
collection = new List
for file in shapefiles:
collection.add(file.queryResult(query));
writeShapefile(collection);
您实际上可以使用普通的 Java ArrayList(或 Set)来存储结果,然后使用 ListFeatureCollection 将它们写出。
FeatureCollection features = new ListFeatureCollection(schema, feats);
警告:您的所有 shapefile 必须具有相同的内容(或者您的查询必须只提取公共属性)。有关 ShapeFile 编写的示例,请参阅我对 this question 的回答。
【讨论】: