用 editplus 開啟 csv 格式的檔案,會發現編碼為 ansi。在 ansi 裡,gbk 是專門來解決中文編碼的,是雙位元組的,不論中英文都是雙位元組。通常程式儲存檔案的編碼常為 utf-8,因此讀取 csv 檔案時,需要進行編碼轉換,把 gbk 的轉為 utf-8,匯出的時候再把 utf-8 轉換為 gbk。
csv 格式的檔案
標題,日期
測試1,
2020-10
-29
處理**
<
?php
function utf8toansi
($str)
function ansitoutf8
($str)
return $str;
}function exportcsv
($title, array $header, array $data)
fclose
($fp)
; exit;
}$file =
fopen
(utf8toansi
('匯入.csv'),
'r')
;$result =
;while
($data =
fgetcsv
($file)
)$filename =
'匯出.csv'
;$header =
array
('標題'
,'日期'
,'新增項');
$cnt =0;
$data =
;foreach ($result as $array)
$tem =
; $tmp[
]= $array[0]
; $tmp[
]= $array[1]
; $tmp=
'new'
; $data[
]= $tmp;
}exportcsv
($filename, $header, $data)
;
認真看過**後,會覺得中間那個編碼轉換的步驟是多此一舉,這裡可以這麼說,但用到專案裡就不一樣了,專案裡可能是讀取 csv 檔案校驗然**庫,再從庫里取出資料再導到 csv 檔案裡,這時就不是多此一舉了,而是必須的了,因為資料庫裡為 utf8 編碼的,沒經過轉換會亂碼的。 PHP 讀取 匯出 CSV檔案
工作中經常會有遇到匯入 匯出的需求,下面是常用的方法。讀取csv檔案,可以分頁讀取,設定讀取行數,起始行數即可。匯出csv檔案,用兩種方法進行實現。1 2 讀取csv檔案 3 param string csv file csv檔案路徑 4 param int lines 讀取行數 5 param i...
python 讀取並寫入csv
使用python讀取csv檔案 要讀取的csv檔案為 訓練用資料.csv 新建立的寫內容的檔案為 222.csv import csv csv file csv.reader open 訓練用資料.csv r f open 222.csv w newline writer csv.writer f ...
python讀取並寫入csv檔案
python檔案讀寫,以後就用with open語句 python讀取並寫入csv檔案 import csv 讀取csv檔案方法一 csvfile open data.csv r encoding utf8 檔案是中文的話要設定編碼格式 reader csv.reader csvfile 返回的是迭...