问题描述:在10.3刚出为不久,就发现有时属性表会出现中文乱码的问题。
解决方法:在Cmd命令行中输入以下命令:
reg add HKEY_CURRENT_USERSoftwareESRIDesktop10.3CommonCodePage /v dbfDefault /t REG_SZ /d 936 /f
问题分析:此时将会新建Common 项,在Common项下面新建 CodePage项,在CodePage项中(注册表右侧)添加一个字符串(REG_SZ),名称: dbfDefault,健值:969,这是因为ArcGIS默认通过读取系统的代码页(CodePage)来确定文件编码的(或者是根据操作系统语言来判断的),中文系统一般采用GBK的编码方式,因此中文系统下,生成的shapefile文件都是以GBK来编码其中的字段属性的,如果dbf不是GBK编码就会出现乱码问题。
codepage | 描述 |
936 | 简体中文 |
950 | 繁体中文 |
65001 | UTF-8 |
下面是正确编码的结果:
当然也可以写成reg注册文件形式:
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USERSoftwareESRIDesktop10.3CommonCodePage]
"dbfDefault"="936"
参考: