日期:2014-05-19  浏览次数:20829 次

如何取出邮件附件以及邮件中的乱码问题
Byte[]   outbytes;
string   input;
string   line   =   " ";
input   =   "retr   "   +   messagenumber.ToString()   +   "\r\n ";
outbytes   =   System.Text.Encoding.ASCII.GetBytes(input.ToCharArray());
ns.Write(outbytes,   0,   outbytes.Length);
ArrayList   msglines   =   new   ArrayList();
do
{
line   =   sr.ReadLine();
msglines.Add(line);
}   while   (line   !=   ". ");
msglines.RemoveAt(msglines.Count   -   1);
问题是取出的msglines包含邮件的所有内容
怎么把附件提取出来保存成和上传时一样的格式
不能有中文乱码
不要使用OPENPOP之类的东西

------解决方案--------------------
这个不太清楚,有了答案告诉我一声
------解决方案--------------------
参考http://topic.csdn.net/t/20050110/12/3712751.html
------解决方案--------------------
LumiSoft是一个开源的包,把pop3,smtp都封装好了。从底层开始写有点麻烦。网上把它搜一下,有好多文章。
------解决方案--------------------
do
{
line = sr.ReadLine();
//你可以在读取后,再将他转换成你把它转换的格式,比如你是用ASCII,那么你就要用ASCII去
//将它编译成中文啊...代码不能给你,自己去搞定吧
msglines.Add(line);
} while (line != ". ");


------解决方案--------------------
设置邮件服务器的编码方式就ok了