matlab打开excel乱码,ArcGis 属性表.dbf文件使用Excel打开中文乱码的解决方法
轉(zhuǎn)自:https://www.cnblogs.com/yzhyingcool/p/10267716.html
2019年3月27日補(bǔ)充:
在ArcMap10.3+(根據(jù)官網(wǎng)描述應(yīng)該是,作者測試使用10.5,可行)以后的版本,可以使用ArcToolbox工具導(dǎo)出Excel,而不出現(xiàn)亂碼。
工具位置ConversionTools——Excel——Table to Excel
.xls最大65536行,.xlsx最大1048576行
以下是原文:
ArcGis Shapefile文件的屬性表信息存儲(chǔ)于.dbf格式的文件之中,在 ArcGIS 10.2.1 之前的版本,創(chuàng)建 shapefile 的時(shí)候,其編碼類型是ANSI,編碼規(guī)則由操作系統(tǒng)的語言區(qū)域設(shè)置決定的,在中文操作系統(tǒng)下編碼方式是gbk,即936。 而從 ArcGIS Desktop 10.2.1 版本以及之后的版本,產(chǎn)生的shapefile是Unicode的,編碼規(guī)則是 UTF-8 。這個(gè)dbf格式的文件可以直接拖到一個(gè)打開的Excel文件中打開查看(可以修改,但不能保存,可以另存為Excel文件)。
對于10.2.1之前版本ArcGis創(chuàng)建的dbf,即GBK編碼文件:
直接扔到Excel打開后,有時(shí)會(huì)出現(xiàn)中文字段亂碼的情況,就下圖的樣子。
這是什么原因呢?出現(xiàn)這種情況的原因一般是你的Excel跑到外國去了,對,它崇洋媚外了,不認(rèn)識(shí)這個(gè)編碼了。
解決方法
先去驗(yàn)證一下,打開Excel——【文件】——【選項(xiàng)】——【語言】,看看編輯語言
糾正錯(cuò)誤。選擇中文,點(diǎn)擊“設(shè)為默認(rèn)值”,設(shè)定完成后重啟一下Excel。
看結(jié)果
對于10.2.1以后的ArcGis版本
創(chuàng)建Shapefile默認(rèn)使用UTF-8編碼,所以使用Excel是打開亂碼的,Excel認(rèn)ANSI(中文系統(tǒng)下是GBK)。可以通過導(dǎo)出文本后轉(zhuǎn)換到Excel的方式解決。
為了使創(chuàng)建Shapefile文件默認(rèn)編碼就采用GBK,可以通過安裝官方補(bǔ)丁的方式解決。安裝補(bǔ)丁后允許修改系統(tǒng)的注冊表默認(rèn)代碼頁,將代碼頁值改掉就可以了。
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、下載補(bǔ)丁
https://support.esri.com/zh-cn/downloads
進(jìn)入上面鏈接指向的頁面,檢索關(guān)鍵詞“Shapefile Default Code Page Patch” ,下載對應(yīng)版本的patch安裝。
2、修改注冊表
復(fù)制下面的批處理代碼,粘貼到文本文檔,然后把ArcGis版本改成安裝的版本,保存,將文件擴(kuò)展名改為.bat,雙擊bat即可實(shí)現(xiàn)注冊表修改。
@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
總結(jié)
以上是生活随笔為你收集整理的matlab打开excel乱码,ArcGis 属性表.dbf文件使用Excel打开中文乱码的解决方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 库存数量控制中储备定额方法的改进与实现
- 下一篇: matlab产生泊松分布