所以我這樣做(我使用Drupal 6):Excel的UTF-8 CSV導出和分離
while(@ob_end_clean());
drupal_set_header("Content-type: text/csv;");
drupal_set_header("Cache-Control: no-store, no-cache");
drupal_set_header("Content-Disposition: attachment; filename=translations.csv");
print chr(255) . chr(254) . mb_convert_encoding($output, 'UTF-16LE', 'UTF-8');
exit;
要導出UTF-8字符的CSV。當我導入到excel中時,utf-8字符將正確顯示。
問題是,Excel不會解析分隔符,即逗號將全部顯示在一列中,而不是用作文件打開時的分隔符。
有沒有辦法讓它打開,逗號會用作分隔符?
在CSV文件中去線以下:
$output .= '"'.str_replace('"', '""', $id).'","'.str_replace('"', '""', $source).'","'.str_replace('"', '""', $translation) . '"';
我嘗試使用標籤\ t,而不是逗號作爲分隔符,但同樣的事情會發生,即。標籤將不能作爲分隔符的文件打開
嘗試再次使用一個標籤,但是寫一行UTF-16LE線,這是默認的分隔符是Excel中使用,除非你明確地使用在Excel中導入功能...爲什麼你不能使用fputcsv()? –
我做了...我用\ t替換了它,但它沒有工作excel會改爲顯示一大堆\ t的 – pillarOfLight