我有一个非常简单的东西,它只是以 CSV 格式输出一些东西,但它必须是 UTF-8。我在 TextEdit 或 TextMate 或 Dreamweaver 中打开此文件,它会正确显示 UTF-8 字符,但如果我在 Excel 中打开它,它会做这种愚蠢的 íÄ 事情。这是我在文档开头的内容:
header("content-type:application/csv;charset=UTF-8");
header("Content-Disposition:attachment;filename=\"CHS.csv\"");
除了 Excel (Mac, 2008) 不想正确导入它之外,这一切似乎都达到了预期的效果。Excel 中没有可供我“以 UTF-8 格式打开”或其他任何选项的选项,所以……我有点恼火。
尽管很多人有同样的问题,但我似乎无法在任何地方找到任何明确的解决方案。我看到最多的是包含 BOM,但我无法完全弄清楚如何做到这一点。正如你在上面看到的,我只是在echo
输入这些数据,我没有写任何文件。如果需要,我可以这样做,我只是不是因为在这一点上似乎不需要它。有什么帮助吗?
更新:我尝试回显echo pack("CCC", 0xef, 0xbb, 0xbf);
刚刚从试图检测 BOM 的站点中提取的 BOM。但是 Excel 只是在导入时将这三个字符附加到第一个单元格,并且仍然弄乱了特殊字符。