#1 楼
您可以使用QGIS做到这一点。首先加载您的shapefile,然后进行save as
并编码,然后选择utf-8下拉菜单,然后保存您的文件。#2 楼
假设您使用的是Linux,并且可以访问最新版本的GDAL,则可以尝试以下操作(来自本文): export SHAPE_ENCODING="ISO-8859-1"
ogr2ogr output.shp input -lco ENCODING=UTF-8
注意:LATIN1应该也可以工作ISO-8859-1的标准。
在Windows中,请勿设置
SHAPE_ENCODING
,ogr2ogr
无法识别ISO-8859-1
或LATIN1
。评论
需要澄清的是,这里的“最新”似乎是1.9.x。我在1.8.1上尝试了一下,但没有用,在1.9.1上再次尝试了,但是做了。
– Michal Migurski
2012年5月26日下午4:59
在Windows上对我不起作用。
–帕维尔·拉齐维洛夫斯基(Pavel Radzivilovsky)
2012年11月21日在21:16
已在Windows中运行,已经更新了答案。
–潮
13年2月10日在23:29
您知道我是否可以在某处查找SHAPE_ENCODING的有效值列表吗?
– JJD
2014年2月28日在13:30
@JJD它们与iconv使用的相同:gnu.org/software/libiconv
– Unicoletti
2014年3月2日15:46
#3 楼
如果我对Shapefile的理解是正确的,则对编码敏感的部分是DBF文件中包含的属性数据库。以下答案可以帮助我使用LibreOffice Calc / Base解决此问题:
https://gis.stackexchange.com/a/3663/17998
它还具有其他优点,您可以使用不同的字符集打开DBF文件,从而找到找出当前的编码实际是什么。
评论
温馨提示:为使此解决方案有效,必须在LATIN1 / ISO-8859-1环境中打开输入shapefile时启动qgis,否则它将无法正确读取。如果您在UTF8环境中工作,转换可能会无提示地失败,从而破坏数据,具体取决于shapefile中的数据。顺便说一句,大多数操作系统现在默认为UTF8。
– Unicoletti
2011年10月19日15:48
请注意,在某些情况下它可能无法正常工作,我遇到了这类问题:(osgeo-org.1560.n6.nabble.com/UTF-8-no-more-td4647456.html)
– JaakL
12年7月16日在5:48
我正在尝试将单个形状文件从系统保存到utf-8,但无法正常工作。 gis.stackexchange.com/questions/219092/…
–穆罕默德·法赞汗(Muhammad Faizan Khan)
16年11月25日在10:09