Html 邮件主题行中的中文字符

Html 邮件主题行中的中文字符,html,encoding,html-encode,Html,Encoding,Html Encode,我想在mailto:email链接中添加一些汉字 我试过了 <a href="mailto:email@address.com?subject=调查 / Inquiry">Email</a> 但当我单击该链接时,Outlook主题行显示: 询问 我也试过了 <a href="mailto:email@address.com?subject=&#35843;&#26597; / Inquiry">Email</a> 但是我

我想在mailto:email链接中添加一些汉字

我试过了

<a href="mailto:email@address.com?subject=调查 / Inquiry">Email</a>

但当我单击该链接时,Outlook主题行显示:

询问

我也试过了

<a href="mailto:email@address.com?subject=&#35843;&#26597; / Inquiry">Email</a>

但是我得到了与上面相同的结果


我意识到这可能是Outlook的一个问题,但我有兴趣找到实现此功能的正确方法。

我尝试在主题行中放置非ASCII字符已有一段时间了。底线是:它不能可靠地工作


我(有限的)理解为什么它不起作用是标准规定电子邮件是7位ASCII码。MIME标准通过对电子邮件内容进行不同的编码来解决这一问题。但是:主题行不是内容的一部分。它是一个标题。

因为主题在邮件标题中,所以无法知道您使用的是什么编码。您需要使用此RFC中定义的MIME邮件头扩展

中文的主题是这样的

Subject: =?GB2312?B?u7bTrbLOvNPDwLn61bm74Q==?=

但是现在越来越多的客户端采用UTF-8编码。您可能也想试试。

这篇文章很麻烦,但也有可能,它是一篇很好的文章,讨论了理想世界的标准兼容方式和Internet Explorer的现实世界场景。

对于注释1中的文本,请启用“工具->选项->邮件格式->国际选项”->“启用对邮件的UTF-8支持:协议”

因为outlook的默认字符集是gb2312,所以在对主题进行编码时,必须将汉字翻译为gb2313,然后对其进行编码。
总之,您传递的字符集必须与outlook的默认字符集一致。

Raw URL Encode

要使用特殊字符对mailto链接/标准链接进行编码,可以使用

如果您正在寻找在线工具,请尝试

以您的例子:

将转换为:


您在文档中使用什么编码?:)电子邮件中的编码很难做到,因为它太依赖于最终用户拥有的客户端。抱歉,我无法提供更多帮助“这可能是Outlook的问题,但我有兴趣找到实现此功能的正确方法”-您已经有了正确的方法。对于损坏的浏览器、操作系统和电子邮件客户端,没有明显的解决方法。问题甚至可能不是Outlook—当链接从浏览器到达Outlook时,可能已经断开。更改为mailto:link类似=?GB2312?B?u7bTrbLOvNPDwLn61bm74Q=?=不会解决问题,它只会使电子邮件客户端对字符串“=?GB2312?B?u7bTrbLOvNPDwLn61bm74Q=?=”进行编码使用相关的传输编码。这里的问题是前景。