首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >读取csv文件时出现的字符编码问题

读取csv文件时出现的字符编码问题
EN

Stack Overflow用户
提问于 2013-04-26 16:09:28
回答 1查看 2K关注 0票数 1

我的csv文件包含特殊的字符,如‘i’,‘节’等。当我读取和打印该文件时,文件中的特殊字符被转换为'�‘。我尝试将页面编码设置为UTF-8和ISO 8859-1。但这些都没有帮助。

smb能否为解决方案提供建议?

EN

回答 1

Stack Overflow用户

发布于 2013-10-26 20:11:10

我认为你必须检测并更改原始编码,如下所示(如果你使用php):

代码语言:javascript
代码运行次数:0
运行
复制
  <?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 );
        }
 ?>
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16231635

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档