Unicode ColdFusion cfmail主题行中的特殊字符

Unicode ColdFusion cfmail主题行中的特殊字符,unicode,coldfusion,coldfusion-9,cfmail,Unicode,Coldfusion,Coldfusion 9,Cfmail,邮件主题行中的特殊字符将转换为问号或方框 我曾试图用URLEncodedFormat包装主题行的动态字符串,但最终徒劳无功 <cfset strSubject= URLEncodedFormat(s)> <cfmail from="xxxxx@xx.com" to="yyyyyyy@yyy.com" subject="#strSubject#" type="html" > #testText# </cfmail>

邮件主题行中的特殊字符将转换为问号或方框

我曾试图用URLEncodedFormat包装主题行的动态字符串,但最终徒劳无功

<cfset strSubject= URLEncodedFormat(s)>
<cfmail 
  from="xxxxx@xx.com" 
  to="yyyyyyy@yyy.com" 
  subject="#strSubject#"         
  type="html"
>
  #testText#
</cfmail>

#测试文本#

假设特殊字符是unicode字符,则必须将字符串编码为base64格式,并在主题行中使用该格式。像这样,

<cfset strSubject="Demande d’chantillons supplémentaires">
<cfset strSubject=ToBase64(strSubject, "utf-8")>

<cfmail from="test@test.com" to="test@test.com" subject="=?utf-8?B?#strSubject#?=" type="html">
    #testText#
</cfmail>

#测试文本#
主题行的格式必须为
=??=

=
是必需的

字符集”可以是在IANA注册的任何字符集。典型的 它将是与消息正文相同的字符集

编码”可以是表示类似Q编码的“Q” 引用的可打印编码,或表示base64编码的“B”

编码文本”“是Q编码或base64编码文本


另外:将charset=“utf-8”添加到cfmail标记中。如果您在主题中使用utf-8,您可能也会在身体中使用它。

酷的解决方案。下面是解释这一点的wiki条目