在CodePage项中(HKEY_CURRENT_USERSoftwareESRIDesktop10.3CommonCodePage)(注册表右侧)添加一个字符串(REG_SZ),名称: dbfDefault,健值:969,这是因为ArcGIS默认通过读取系统的代码页(CodePage)来确定文件编码的(或者是根据操作系统语言来判断的),中文系统一般采用GBK的编码方式,因此中文系统下,生成的shapefile文件都是以GBK来编码其中的字段属性的,如果dbf不是GBK编码就会出现乱码问题。
解决方法:在Cmd命令行中输入以下命令:
reg add HKEY_CURRENT_USERSoftwareESRIDesktop10.3CommonCodePage /v dbfDefault /t REG_SZ /d 936 /f
备注:记得修改相应的版本号
扩展:shape 的.cpg文件 (文件内容为 GBK 或者 GB2312 或者 UTF-8)
10.1之后arcmap会先读取.cpg文件来判断文件的编码