有关Jmail组件收邮件出现主题乱码和内容部分字变成“?”,求解
jpop = new jmail.POP3Class();//实例化
//打开POP3服务器的连接
jpop.Connect(Email, Password, Server, Port);
if (jpop.Count > 0)//有邮件
{
for (int i = 1; i <= jpop.Count; i++)
{
lbltoAccessState.Text = "正在导入邮件!";
lbltoAccessState.ForeColor = Color.Green;
jme = jpop.DownloadSingleMessage(i);
//获取附件集合
atts = jme.Attachments;
//获取第一个附件
att = atts[0];
//邮件格式设置
jme.Charset = "UTF-8";//文本编码
//jme.Silent = true;
//
//jme.EnableCharsetTranslation = true;
//jme.ContentTransferEncoding = "Base64";
jme.Encoding = "Base64"; //设置附件默认编码
jme.ISOEncodeHeaders = false; //邮件头是否使用iso-8859-1编码 默认值为true
//jme.ContentType = "text/plain";
sql = "insert into EmailContent (邮件主题,发件人,邮件内容,发送日期,附件)" + "values ('" + jme.Subject + "','" + jme.From + "','" + jme.Body +"','" + jme.Date + "','" + att.Name + "')";
这是收邮件的部分代码
Subject:鍏昏渹鏃ュ織(原本是“养蜂日志”)
Body:<bee><famerinfo><farmer><name>王小?/name></farmer></famerinfo><beediary><content><a0>常规检?</a0><a1>稻草保温2</a1><a2>调整蜜脾4</a2><a3>5;19蜂蜜;||5;38.5</a3><a29>枣花6.6常温塑料容器</a29></content></beediary><beeproductbuy></beeproductbuy></bee>
(原本是:<bee><famerinfo><farmer><name>王小钧</name></farmer></famerinfo><beediary><content><a0>常规检查3</a0><a1>稻草保温2</a1><a2>调整蜜脾4</a2><a3>5;19蜂蜜;||5;38.5</a3><a29>枣花6.6常温塑料容器</a29></content></beediary><beeproductbuy></beeproductbuy></bee>)
前提:1、这个邮件是从163邮箱里POP3下来的,
2、这个邮件是安卓手机端发到163邮箱的
3、也就是我这边要得到手机终端的发来的邮件
4、用的是Jmail 4.4 pro
问题:1、按照安卓手机端->163邮箱->jmail接受,看其字符串文本,或者网页显示,出现乱码现象
2、相同内容邮件,按照126邮箱->163邮箱->jmai接受,不出现上述问题。
这是什么原因,比较费解,编码问题么,请各位大虾帮忙,谢谢!
--------------------编程问答-------------------- //文本编码
改成:jme.Charset = "gb2312";
试试 --------------------编程问答-------------------- 试试过了,改成gb2312不行的,谢谢 --------------------编程问答-------------------- 你的问题不知道 解决了么?
我在内容显示上也是出现了类似的问题!
--------------------编程问答-------------------- try
{
string str = mailMessage.Headers.GetHeader("Subject");
string[] strss = str.Split('?');
if (strss[1].Contains("utf-8"))
{
byte[] bytystr = Convert.FromBase64String(strss[3]);
string strlast = Encoding.UTF8.GetString(bytystr);
email.Theme = strlast;
}
else
{
email.Theme = mailMessage.Subject;
}
}
catch
{
email.Theme = "无主题";
}
补充:.NET技术 , ASP.NET