1、iconv 簡介
iconv是知名的開源跨平台編碼轉換庫,iconv.exe是iconv庫在windows下的命令列工具
作用為:對於給定檔案把它的內容從一種編碼轉換成另一種編碼。
2、iconv用法
# iconv --help
-f encoding :把字元從encoding編碼開始轉換。
-t encoding :把字元轉換到encoding編碼。
-l :列出已知的編碼字元集合
-o file :指定輸出檔案
-c :忽略輸出的非法字元
-s :禁止警告資訊,但不是錯誤資訊
--verbose :顯示進度資訊
-f和-t所能指定的合法字元在-l選項的命令裡面都列出來了。
# iconv -l
# iconv -f euc-jp-ms -t utf-8 file1 -o file2 //沒-o那麼會輸出到標準輸出.
3、csv檔案中文亂碼問題解決# file test.csv
test.csv: iso-8859 text, with crlf, lf, nel line terminators
或者# file --mime-encoding test.csv
test.csv: iso-8859-1
2、檢視系統語言設定
# cat /etc/locale.conf
lang=en_us.utf-8
注:可以看出該centos系統是以utf-8編碼的
利用iconv工具將檔案從iso-8859轉換成utf-8
命令:
# iconv -f iso-8859 -t utf-8 test.csv -o test2.csv
結果出現以下報錯:
iconv: conversion from `iso-8859' is not supported
try `iconv --help' or `iconv --usage' for more information.
解決方案:將iso-8859換成gbk
命令:
# iconv -f gbk -t utf-8 test.csv -o test2.csv
iconv: illegal input sequence at position 12656765
# file 2.csv
2.csv: utf-8 unicode text, with crlf, lf line terminators
編碼格式改變後的輸出檔案已經可以正常顯示中文嗎,不再亂碼!!! 工具篇 csv檔案讀寫
目的 在python處理資料的很多時候,需要載入檔案,通常還是csv格式,希望載入之後是個二維列表 陣列,這樣才方便處理 1.簡單的api能夠匯入資料到記憶體中 2.能夠適應複雜 大資料量機器學習的場景csvimport pandas as pd import numpy as np df pd.r...
csv檔案生成小工具
如果用shell來做這件事的,通常是兩種方法 1.捕獲終端輸出,後續對輸出做一定處理。但是終端輸出實際上已經丟失了很多格式資訊,很難做到完善處理。2.用mysql內建的file命令一次性生成檔案。mysql內建的函式功能有限,沒法做到比較好的輸出格式化。所以選擇了python來做。主要注意幾點 1....
Python 匯出csv檔案,解決Excel亂碼
使用python提供的csv模組,匯出excel檔案,指定編碼格式後,在 indows中開啟依然出現亂碼,原因 windows的excel使用bom來確定檔案是utf8編碼,將bom寫在檔案開頭即可。使用csv模組,配合django.http.streaminghttpresponse使用生成器進行...