将阿拉伯语文本转换为HTML代码字符

时间:2011-05-25 13:07:19

标签: html character-encoding asp-classic vbscript

我正在尝试发送包含阿拉伯语文本的电子邮件,我的问题是,当我将阿拉伯语文本添加到电子邮件时,它会将其更改为随机字母(与电子邮件的字符编码有关 - 我可以'改变)。

是否有可用于将阿拉伯语转换为HTML代码()的内置函数或自定义函数,以便它随后显示在我的HTML电子邮件中?

2 个答案:

答案 0 :(得分:1)

您是否尝试在HTML标头中设置编码类型?

将以下内容添加到HTML的<head>部分:

<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">

这应该使您的阿拉伯语(和其他非ascii)字符正确呈现。

也就是说,重要的是要注意,在发送HTML电子邮件时,您总会遇到问题,因为常用的不同电子邮件客户端具有截然不同的功能 - 甚至比浏览器更多。

一个人可能会在当前版本的Outlook中打开电子邮件,另一个人可能会在十年前的副本中打开另一个电子邮件。其他人可能会使用某种版本的Thunderbird,而其他许多人会使用像Hotmail,Yahoo,Gmail或无数其他人这样的网络邮件客户端。甚至可能有人将电子邮件设置为显示文本模式电子邮件而不是HTML。

您可能无法控制其中的任何内容,因此确保您已在各种电子邮件客户端中进行测试非常重要。也就是说,鉴于您正在发送阿拉伯文本,可以假设您的大多数收件人将使用可以成功呈现阿拉伯语的电子邮件客户端,因此希望仅此事实可以为您缓解此问题的最坏情况。

答案 1 :(得分:1)

保留HTML转义(ex &#1505;),并将ContentType设置为text/html

将电子邮件转为HTML
'Create mailer
mailer.ContentType = "text/html"
'User mailer

要将unicode转换为HTML转义符,您可以使用内置函数HTMLEncode

mailer.BodyText =  Server.HTMLEncode(body)

注意:您的查看器需要安装适当的字形集。