首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >读取CSV w/ CFFile &非罗马字符

读取CSV w/ CFFile &非罗马字符
EN

Stack Overflow用户
提问于 2014-07-08 21:00:24
回答 1查看 805关注 0票数 4

更新:原始CSV是在中创建的;当我将数据复制到Google电子表格并从下载CSV时,它工作得很好。我猜有编码问题吗? Excel CSV?有没有任何方法可以绕过这个w/ Excel,或者我们需要告诉我们的客户使用Google文档?

我有一个CSV w/非罗马字符(我的例子是法语,但我们也支持完全非罗马语言,如阿拉伯语和泰语),我正在通过ColdFusion的cffile阅读。问题是读取的输出是否将所有重音字符转换为奇怪的字符?符号(�)最初在cffile上没有指定字符集,所以我尝试添加utf-8 (无更改)和utf-16 (所有内容都转换为中文?)。

有人知道我如何在不丢失/搞乱字符的情况下从CSV中获取这些数据吗?

CSV示例:

史密斯,琼,joan.smith@test.com,H pital Jésus

原稿:

代码语言:javascript
复制
<cffile action="read" file="#expandedFilePath#" variable="strCSV">

C cffile w/ charset添加:

代码语言:javascript
复制
<cffile action="read" file="#expandedFilePath#" variable="strCSV" charset="utf-8">

strCSV的cfdump (没有字符集/utf-8字符集):

史密斯,琼,joan.smith@test.com,H�pital J�sus

strCSV的cfdump (utf-16字符集):

卭楴栬䩯慮ⱪ潡渮獭楴桀瑥獴⹣潭ⱈ楴慬⁊畳ഊ

EN

回答 1

Stack Overflow用户

发布于 2014-07-10 09:49:26

Excel和大多数Windows程序一样,使用CP-1252编码(而不是UTF-8;这一点很重要:也不是大多数编码猜测者所认可的ISO-8859-1 )。你是否已经尝试过:

代码语言:javascript
复制
<cffile action="read" file="#expandedFilePath#" 
      variable="strCSV" 
      charset="windows-1252" />

如果这样做有效,您可以依赖您的输入始终是默认Windows文件吗?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24641524

复制
相关文章

相似问题

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