csv ファイルに「æ」、「å」などの特殊文字が含まれています。ファイルを読み取って印刷すると、ファイル内の特殊文字が「�」に変換されます。ページエンコーディングをUTF-8とISO 8859-1に設定してみました。しかし、これらのどれも役に立ちませんでした。
smb は解決策をアドバイスできますか?
csv ファイルに「æ」、「å」などの特殊文字が含まれています。ファイルを読み取って印刷すると、ファイル内の特殊文字が「�」に変換されます。ページエンコーディングをUTF-8とISO 8859-1に設定してみました。しかし、これらのどれも役に立ちませんでした。
smb は解決策をアドバイスできますか?
次のように元のエンコーディングを検出して変更する必要があると思います(phpを使用している場合):
<?php
header( "Content-Type: text/html; charset=utf-8");
$csvContent = file_get_contents( $fileName );
$encoding = mb_detect_encoding( $csvContent,
array("UTF-8","UTF-32","UTF-32BE","UTF-32LE","UTF-16","UTF-16BE","UTF-16LE"),
TRUE );
if( $fileEncoding !== "UTF-8" ) {
$csvContent = mb_convert_encoding($csvContent, "UTF-8", $fileEncoding );
}
foreach( explode( PHP_EOL, $csvContent ) as $item ) {
var_dump($item );
}
?>