GeoTools过滤器用于shapefile

时间:2016-09-23 16:39:41

标签: filtering shapefile geotools

我正在寻找使用GeoTools来读取shapefile。使用它的教程很简单,显示如何将过滤器设置为“Filter filter = Filter.INCLUDE;”指定一切。

我想在非常大的形状文件上拆分读数以达到性能目的。本质上,我想从读取“THE_GEOM”数据中分割DBF文件中信息的读取。我们已经构建了许多自己的过滤器,并且更容易使用它,然后根据需要检索实际几何体。

  1. 如何指定过滤器以检索没有几何体的所有DBF信息?
  2. 如何在没有DBF信息的情况下指定过滤器来检索几何图形?这并不重要,因为它可能不会影响性能,但我想知道。
  3. 感谢。

1 个答案:

答案 0 :(得分:0)

通过设计GeoTools' Shapefile Datastore竭尽全力将几何和属性(DBF内容)保持在一起。因此,您将不得不在内部寻找能够做到这一点。因此,您可以使用DBFFileReaderShapefileReader来分割阅读材料。

我会考虑将您的过滤器移植到GeoTools,因为它可以让您在Shapefiles过小或过慢时灵活地切换数据源。可能值得查看CQL and ECQL classes以帮助构建它们。 如果您真的处理大型Shapefile(> 2Gb),那么使用适当的空间数据库(如PostGIS)几乎肯定会提供更好的性能,而GeoTools将使用完全相同的过滤器以完全相同的方式访问数据。