2008-11-11 24 views
2

我試圖自動生成一個帶有商標符號的純文本電子郵件。我嘗試了所有我能想到的,但仍然沒有經過。CFMail中的特殊字符

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

回答

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,因此在您的設置中,這種期望鏈可能會被破壞。

+0

很好,謝謝! – 2008-11-12 20:31:43

2

我認爲這是沒有這麼多CFMAIL的問題,而是與電子郵件客戶端的純文本郵件顯示字符碼從字面上,而不是把它們轉換成它們對應的字符的問題。

在HTML模式下使用CFMail應該提供您正在查找的結果。