2011-08-06 109 views
9

我有一個包含中文字符的數據表的Excel文檔。我正嘗試將此Excel電子表格導出爲CSV文件以導入到MySQL數據庫中。如何將包含中文字符的Excel文件導出爲CSV格式?

但是,當我將Excel文檔另存爲CSV文件時,記事本將生成的CSV文件的中文字符顯示爲問號。導入MySQL保留了問號,完全忽略了原始漢字。

我懷疑這可能與使用UTF-8編碼的Excel有關。謝謝你的幫助!

+0

記事本是假的。你有沒有試過用真正的文本編輯器打開它?如記事本++或ultraeditor。 –

+0

謝謝黃。我試過Notepad ++,然後jEdit,它們都支持UTF-8。問號仍然沒有變成漢字。因此,我認爲Excel只是在將電子表格導入CSV格式時啃過漢字。我仍在尋找解決方案。 – user534017

回答

2

你可能想試試notepad ++,我懷疑notepad會支持unicode字符。

http://notepad-plus-plus.org/

+0

如果文件以某種被認爲是字節順序標記的東西開始,記事本支持unicode字符,這在UTF-8中是一件真正醜陋的事情(特別是考慮到UTF-8首先不需要它)。 –

+0

嗨,根據以上,我試過記事本++和jEdit,它們都支持UTF-8。再次,問號仍然沒有變成漢字。因此,我認爲Excel只是在將電子表格導入CSV格式時啃過漢字。我仍在尋找解決方案。 – user534017

+0

Excel不會以UTF-8格式導出爲CSV格式。它只支持「Unicode文本」格式的UTF-8。 – Nelson

8

據我所知,Excel不保存任何Unicode編碼的CSV文件。我最近試圖用英鎊符號將文件導出爲CSV文件時遇到類似問題。我有能力完全使用另一個工具的好處。

我的Excel 2010版本可以以Unicode格式File > Save As > Unicode Text (.txt)導出,但輸出是製表符分隔的UCS-2編碼文件。我根本不瞭解MySQL,只是簡單地看一下規格說明,似乎是處理製表符分隔的導入和UCS-2。可能值得嘗試這個輸出。

編輯:此外,你總是可以在記事本中打開這個unicode輸出++將其轉換爲UTF-8 Encoding > Convert to UTF-8 without BOM並可能替換用逗號所有選項卡字符太(使用在擴展搜索模式替換對話,\t在查找框中和, 。在替換框中)

7

下面的方法已經過測試,用於導入CSV的MongoDB的文件,所以它應該工作:

  1. 在Excel工作表中,轉到文件>另存爲。

  2. 命名該文件,然後從「另存爲類型」旁邊的下拉列表中選擇Unicode文本(* .txt),然後單擊保存。

  3. 使用您喜歡的文本編輯器打開unicode .txt文件,例如記事本。

  4. 由於我們的unicode文本文件是製表符分隔文件,我們希望將Excel轉換爲CSV(逗號分隔)文件,因此我們需要用逗號替換所有制表符。

  5. 選擇一個製表符,右鍵單擊它並從上下文菜單中選擇複製,或者按下CTRL + C,如下面的截圖所示。

  6. 按下CTRL + H打開替換對話框,並將複製的選項卡(CTRL + V)粘貼到查找內容字段中。當你這樣做時,光標會向右移動,表示該標籤被粘貼。在替換爲字段中鍵入逗號,然後單擊全部替換。

  7. 單擊文件>另存爲,輸入文件名並將編碼更改爲UTF-8。然後點擊保存按鈕。

  8. 更改.txt擴展到在記事本的另存爲對話框直接.csv和選擇所有文件()旁邊的保存類型,如下面的截圖。

  9. 通過單擊文件>打開>文本文件(.prn,.txt,.csv)從Excel打開CSV文件並驗證數據是否正常。

來源here

0

我已經嘗試了我的數據以上所有方法,但它不是做得比較工作,爲我的數據(簡體中國,超過700MB。我已經試過的Windows中國和英文系統,英語和中國excel。Windows excel似乎不能保存到utf8,即使它聲稱這樣做。我指定uft8 csv保存爲,但是當我使用'open sheet'來檢測編碼方法時,它不是uft8,不是GB *以及 這是我的最終解決方案

(1)下載'開放表格'。

(2)正確打開它。您可以滾動編碼方法,直到您看到中文字符顯示在預覽窗口中。 (3)將其另存爲utf-8(如果你想要utf-8)。 PS:你需要找出系統中的默認編碼。據我所知,至於 ,Ubuntu處理UTF8的罰款。但是默認的 簡體中文是以GB **開頭的,即使你編碼爲utf8, ,你也可以直接打開它。在我的情況下,r不能打開我的utf-8 csv ,但可以打開GB *編碼。

即使您的文件非常大,此方法也可以正常工作。 其他一些解決方法是Google表格(但文件大小可能有限)。 Notepad ++也適用於較小的文件。

有一種方法可以通過打開文件並滾動瀏覽編碼方法來檢測編碼方法,直到您看到中文正確顯示。

相關問題