【问题标题】:ColdFusion special unicode characters in the content returned by cfhttpcfhttp 返回的内容中的 ColdFusion 特殊 unicode 字符
【发布时间】:2012-07-29 03:55:29
【问题描述】:

在使用 ColdFusion http 对象检索的内容中,有一些字符作为问号返回;即这些是罗马数字(如Ⅱ),当我用浏览器访问同一页面时,它们显示没有问题。

我发出请求的服务器似乎没有在响应标头中提供任何字符集信息(Content-Type 的值只是“text/html”,cfhttp 结果中的字符集属性为空),但是编码在页面的 html 中声明为“charset=EUC-JP”(它是日语页面)。所以我提出了将字符集设置为 EUC-JP 的请求。

日文(日文字符)内容检索正确,但罗马数字变成问号。

我尝试将字符集设置为 UTF-8 进行请求,但在这种情况下,所有内容都会被打乱。对我来说,那些罗马数字似乎是 Unicode,所以我的理解是我请求混合编码的服务器(但我可能对此有误)。

如何让这些特殊字符在 cfhttp 的 fileContent 中正确显示?

谢谢!

【问题讨论】:

  • 能否分享网址以便我们进行测试?
  • 感谢您的快速回复。不幸的是,由于一些与隐私相关的考虑,我认为我不能这样做。我可以提供任何信息以使其更清楚吗?我可以补充一点,我尝试在我自己网站的测试页面(以 UTF-8 返回)上使用这些罗马数字,显示没有任何问题。
  • @Sharondio,我仍然无处可去。这是一个链接link。在这个页面上,有Ⅰ或Ⅱ等字符。有没有办法阅读此链接并正确存储日文字符和这些罗马数字?

标签: coldfusion character-encoding mixed cfhttp


【解决方案1】:

我能想到的唯一方法是使用不同的编码发出 2 个请求并将数据合并在一起。第一个请求是 EUC-JP 的字符集,第二个请求是 UTF 8。在第二个请求查看第一个请求的内容和每个问号后,查找第二个请求中的索引。例如,当您在第一组内容中点击第 5 个问号时,请在第二组中查找第 5 个罗马数字。不能保证有效,但我能想到的就这么多。

【讨论】:

  • 感谢您的快速回复。我考虑了一下,甚至尝试使用 utf-8 提出请求,但问题是,在这种情况下,一切都是问号、日文字符和那些罗马数字。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-12-01
  • 1970-01-01
  • 2022-06-17
  • 1970-01-01
相关资源
最近更新 更多