我的 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 );
}
?>