asp中gb2312 转 iso-8859-1 编码 函数或解决方案

xiaominjun 2008-06-19 10:25:43
asp的gb2312编码的网站 jmail 发送邮件的时候 发送成功以后如果是国外的操作系统打开邮件则乱码。所以我想把邮件内容改成 iso-8859-1 编码的,
如果用utf-8有的邮箱会发送不成功。所以没用。
可是存入sqlserver数据库的数据都是gb2312编码下存进去的。需要改变编码才能正常显示。所以。遇到了如题问题。
望高手鼎力相助。

简单的说就是要把从数据库里取出来的数据的编码 从 gb2312 改成 iso-8859-1 编码
...全文
213 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaominjun 2008-06-25
  • 打赏
  • 举报
回复
objMail.htmlBody = " <h1>您好啊 </h1>"
这个的原因。。。晕倒。
xiaominjun 2008-06-24
  • 打赏
  • 举报
回复
objMail.ContentTransferEncoding = "base64"' 这里设置成base64
这个我确实没加,我再测试 。希望大家有更多回复。谢谢
wtogether 2008-06-21
  • 打赏
  • 举报
回复
搞错了,是ContentTransferEncoding
Dim objMail
Set objMail = WScript.CreateObject("JMAIL.Message")
objMail.Silent = True
objMail.Logging = True
objMail.Charset = "GB2312"
objMail.ContentType = "text/html"
objMail.ContentTransferEncoding = "base64"' 这里设置成base64
objMail.From = "***"
objMail.FromName = "***"
objMail.AddRecipient "***"
objMail.MailServerUserName = "***"
objMail.MailServerPassword = "***"
objMail.Priority = 1
objMail.Subject = "大家好啊"
objMail.Body = "<h1>您好啊</h1>"
If Not objMail.Send("smtp.163.com") Then
WScript.Echo objMail.Log
End If
objMail.Close
Set objMail = Nothing
xiaominjun 2008-06-21
  • 打赏
  • 举报
回复
受教 。。期待更多回复。。。谢谢
wtogether 2008-06-20
  • 打赏
  • 举报
回复
转是可以转,可是只限于ADODB.Stream,系统识别不了的,ISO-8859-1是纯ASCII字符串,非ASCII当一个字节的UNICODE,这样的转换即外码转换,内核还是Unicode的,如果发过去是乱码,可以用Base64试试
jmail.Encoding = "Base64"

Public Function ConvertCharset(ByVal strData, ByVal strSC, ByVal strDC)
Dim objStream
Set objStream = Server.CreateObject("ADODB.Stream")
objStream.Type = 2 'adTypeText
objStream.Charset = strSC
objStream.Open
objStream.WriteText strData
objStream.Position = 0
objStream.Charset = strDC
ConvertCharset = objStream.ReadText(-1)
objStream.Close
Set objStream = Nothing
End Function

Dim tmp
tmp = ConvertCharset("大家好", "GBK", "ISO-8859-1")
Response.Write tmp & "<br/>"
tmp = ConvertCharset(tmp, "ISO-8859-1", "GBK")
Response.Write tmp & "<br/>"
  • 打赏
  • 举报
回复
http://www.sqlserver.com.cn/c2l0ZS9zaG93Lmh0bWw_bXlpZD0xNjk2Jm5vZGU9YzAuMCZzdWI9YzAuMC4zurl.html
看看这个有帮助没
  • 打赏
  • 举报
回复
ASP的真的不好整

回复内容太短了!
xiaominjun 2008-06-20
  • 打赏
  • 举报
回复
测试过啊,是乱码了 。。我代码都是gb2312编码下 保存的。 我是想把数据库里取出来的数据 转成 iso-8859-1 编码的。。。
  • 打赏
  • 举报
回复
JMail.Charset = "iso-8859-1"
直接不可以吗?
  • 打赏
  • 举报
回复
JMail.Charset = "iso-8859-1"
直接不可以吗?
jacklinchen 2008-06-19
  • 打赏
  • 举报
回复
iso-8859-1好像是Java里用的吧。

// 将 gb2312 格式的 s 转换为 iso-8859-1 格式的 s
// 如果 s 不是 gb2312,结果未知
s = System.Text.Encoding.GetEncoding("iso-8859-1").GetString(System.Text.Encoding.GetEncoding("gb2312").GetBytes(s));

xiaominjun 2008-06-19
  • 打赏
  • 举报
回复
网上 gb2312 转 utf-8 的大堆 ,就没我需要的这个。
  • 打赏
  • 举报
回复
测试过不可以了?~~~~~~~~~~
xiaominjun 2008-06-19
  • 打赏
  • 举报
回复
当然直接不可以。 我这个是用在asp里。

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧