ArcGis属性表.dbf文件使用Excel打开中文乱码的解决方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ArcGis属性表.dbf⽂件使⽤Excel打开中⽂乱码的解决⽅法2019年4⽉拓展:
2019年3⽉27⽇补充:
在ArcMap10.3+(根据官⽹描述应该是,作者测试使⽤10.5,可⾏)以后的版本,可以使⽤ArcToolbox⼯具导出Excel,⽽不出现乱码。
⼯具位置ConversionTools——Excel——Table to Excel
.xls最⼤65536⾏,.xlsx最⼤1048576⾏
最简单的解决⽅法可以先导⼊个⼈地理数据库(Access的.mdb),然后⽤Access打开,输出Excel。
以下是原⽂:
ArcGis Shapefile⽂件的属性表信息存储于.dbf格式的⽂件之中。
在 ArcGIS 10.2.1 之前的版本,创建 shapefile 的时候,其编码类型是ANSI,编码规则由操作系统的语⾔区域设置决定的,在中⽂操作系统下编码⽅式是gbk,即936。
可以拖到Excel打开,如果出现乱码情况,根据下⽂的说明操作。
⽽从 ArcGIS Desktop 10.2.1 版本以及之后的版本,产⽣的shapefile是Unicode的,编码规则是 UTF-8 。
对于10.2.1之前版本ArcGis创建的dbf,即GBK编码⽂件:
直接扔到Excel打开后,有时会出现中⽂字段乱码的情况,就下图的样⼦。
这是什么原因呢?出现这种情况的原因⼀般是你的Excel跑到外国去了,对,它崇洋媚外了,不认识这个编码了。
解决⽅法
先去验证⼀下,打开Excel——【⽂件】——【选项】——【语⾔】,看看编辑语⾔
纠正错误。
选择中⽂,点击“设为默认值”,设定完成后重启⼀下Excel。
看结果
对于10.2.1以后的ArcGis版本
创建Shapefile默认使⽤UTF-8编码,所以使⽤Excel是打开乱码的,Excel认ANSI(中⽂系统下是GBK)。
可以通过导出⽂本后转换到Excel的⽅式解决。
为了使创建Shapefile⽂件默认编码就采⽤GBK,可以通过安装官⽅补丁的⽅式解决。
安装补丁后允许修改系统的注册表默认代码页,将代码页值改掉就可以了。
Esri官⽅的说明是这样的:This patch allows user sites to modify the default code page used in shapefiles to meet specific needs. At 10.2.1 the default code page was set to UTF-8 to be consistent with industry standards.
1、下载补丁
进⼊上⾯链接指向的页⾯,检索关键词“Shapefile Default Code Page Patch” ,下载对应版本的patch安装。
2、修改注册表
复制下⾯的批处理代码,粘贴到⽂本⽂档,然后把ArcGis版本改成安装的版本,保存,将⽂件扩展名改为.bat,双击bat即可实现注册表修改。
@ECHO OFF
IF "%1"=="" GOTO:EOF
reg add HKEY_CURRENT_USER\Software\ESRI\Desktop10.2.2\Common\CodePage /v dbfDefault /t REG_SZ /d 936 /f。