【问题标题】:How to version shapefiles如何对 shapefile 进行版本控制
【发布时间】:2011-10-13 23:05:28
【问题描述】:

我工作的程序有几个 shapefile,有很多属性。目前,它们作为压缩 blob(dbf.gz、shp.gz 和 shx.gz)存储在我们的版本控制 (Subversion) 中。这就是程序使用它们的方式,但是对于版本控制来说非常不方便。我们没有得到有关条目或属性更改的信息 - 只是文件中某处的某些内容发生了更改。没有有用的差异。

DBF 是具有属性的那个。我在想也许我们可以将它存储为 CSV,然后作为构建过程的一部分,convert it to DBF 并执行 ??? (待定)使其成为有效的 shapefile,然后按照当前使用的方式制作压缩版本。

另一种方法可能是从 shapefile 中删除几乎所有属性,将它们存储在 CSV/YAML/whatever 中(可以很好地进行版本控制),然后通过形状 ID 查找它们或尝试将它们附加到我们的对象在从 shapefile 实例化它们之后,类似的东西。

但也许对 shapefile 有更多经验的人有更好的想法?

【问题讨论】:

    标签: versioning blob dbf shapefile


    【解决方案1】:

    您在第二段开头所指的 DBF 具有属性。为什么不以“每个形状”为基础将表格转储到 XML 样式文件中,并将其用于颠覆。如果您实际上是在 Visual Foxpro 中工作(它也使用 DBF 样式文件),您可以使用函数 CursorToXML() 并通过不同形状的循环运行它并转储到每个相应的 XML 文件。然后,当读回它时......每个文件形状的 XMLToCursor()。

    【讨论】:

      猜你喜欢
      • 2017-03-22
      • 2015-03-08
      • 2013-06-11
      • 2023-03-29
      • 2014-10-29
      • 1970-01-01
      • 2019-06-29
      • 2018-02-16
      • 2022-01-08
      相关资源
      最近更新 更多