0
有人可以告诉我,为什么这段代码不工作? 邮件被发送,但字符被压缩。带有UTF-8的ASPEmail产生混乱的字符
“日本语” 变成了 “æ-¥æœ¬èªž”
“テスト日本语AOU” 变成了 “ハ†ã,¹ãƒã€€℃〜¥æœ¬èªžÃ¤Ã¶Ã¼”
<%
Session.CodePage = 65001 ' UTF-8 code
%>
<!DOCTYPE html>
<html>
<head>
<title>MAIL TESTER</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body>
<%
strSubject = "日本語"
strBody = "テスト 日本語 äöü"
Set objEmail = Server.CreateObject("Persits.MailSender")
objEmail.Host = "..."
objEmail.From = "..."
objEmail.FromName = "..."
objEmail.AddAddress "..."
objEmail.Username = "..."
objEmail.Password = "..."
objEmail.CharSet = "UTF-8"
objEmail.ContentTransferEncoding = "Quoted-Printable"
objEmail.IsHTML = True
objEmail.Subject = objEmail.EncodeHeader(strSubject, "UTF-8")
objEmail.Body = strBody
objEmail.Send
Set objEmail = Nothing
%>
MAIL SENT.
</body>
</html>
顺便说一句:当我将FromName更改为“日本语”。这将在我的电子邮件应用程序中正确显示!奇怪。我删除了这一行:“Session.CodePage = 65001”,没有任何改变。我尝试了很多版本的代码,但目前为止没有任何帮助。任何想法? – Bernhard
我做了以下更改: objEmail.Subject = objEmail.EncodeHeader(strSubject,“UTF-8”) : objEmail.Subject = strSubject 现在主题正确显示! – Bernhard