CFMail中的特殊字符

时间:2008-11-11 21:30:05

标签: coldfusion cfmail

我正在尝试自动生成带有商标符号的纯文本电子邮件。我已经尝试了我能想到的一切,但它仍未通过。

<cfmail from="#x#" to="#y#" subject="test" charset="UTF-8">
  ™
  &trade;
  #Chr(153)#
</cfmail>

2 个答案:

答案 0 :(得分:5)

这是编码问题。

您声明邮件编码为UTF-8,但Chr(153)未在Unicode中返回商标符号。它在Windows-1252中,但Chr()适用于Unicode代码点。

使用Chr(8482)将其钉在Unicode TM symbol

我找到了info page that outlines the issue nicely

顺便说一句,编写文字TM符号也适合我。但是这假设您的.cfm文件实际上被编码为Windows-1252 ,ColdFusion运行时被配置为期望这个(两者都是Windows系统上的默认值,我在哪里测试它。模拟规则适用于其他系统。)。 ColdFusion在内部将所有字符串转换为Unicode,因此在您的设置中可能会出现这种期望链中的某些内容。

答案 1 :(得分:2)

我认为这不是CFMail的问题,而是电子邮件客户端在纯文本邮件中显示字符代码而不是将其转换为相应字符的问题。

在HTML模式下使用CFMail应该提供您正在寻找的结果。