轉自:http://blog.sina.com.cn/s/blog_468530a60100kjpy.htmlphp
CSV
文件默認以英文逗號作爲列分隔符,換行符做爲行分隔符。
若是不提供網頁形式只用命令行或二進制程序輸出數據到
CSV
,只須要將數據段按
,
分割,行按
\n
分割,寫入到一個
.csv
文件便可。
但有時字段裏含有
,
和換行符就麻煩了,數據輸出會出現混亂。
html
這時能夠使用雙引號
"
來將每一個字段內容括起來,
CSV
默認認爲由
""
括起來的內容是一個欄位, 這時無論欄位內容裏有除
"
以外字符的任何字符均可以按原來形式引用。
spa
例如
"姓
;
名
:k,j",email
,是一行的內容,
"姓
;
名
:k,j"
是一個單元格里的。
用
""
括起來的欄位內容裏有
CSV
默認的換行符也不要緊。這樣輸出數據就很方便了。注意"是要加轉義字符。
命令行
eg,
code
$content = "\"".$result_name."\",\"".$result_employer."\",\"".$result_specialism."\",\"".$rank[0]."\",";
orm
echo $content;
htm
惟一須要注意的 就是若字段內容裏含有
"
怎麼辦。這時只需將
"
替換成兩個連續的英文雙引號
("")
便可。
CSV
會將字段裏的兩個雙引號
""
顯示成一個。
blog
eg,
ci
$result_specialism = str_replace("\"","\"\"",$datamap['specialism']->content());
get
若是須要使用網頁導出數據的形式,須要寫header了
以PHP爲例:
首先作一個頁面,是被下載的CSV文件頁 saveCSV.php
<?php
//指明此文件類型,頁面類型
header("Content-Disposition: attachment; filename=".$filename.".csv");
header(''Content-Type:text/csv'');
/*
處理數據輸出
*/
?>
直接點擊到一個php頁面就能下載了
form裏用一 個<input type='button' value='導出CSV' onclick='saveCSV()'/>,saveCSV()是一個JS方法,將form的action指向saveCSV.php
http://www.cnblogs.com/chyong168/archive/2012/03/22/2411002.html