Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用BeginReceive阅读POP3电子邮件时会出现特殊字符错误_C#_Sockets_Pop3_Beginreceive - Fatal编程技术网

C# 使用BeginReceive阅读POP3电子邮件时会出现特殊字符错误

C# 使用BeginReceive阅读POP3电子邮件时会出现特殊字符错误,c#,sockets,pop3,beginreceive,C#,Sockets,Pop3,Beginreceive,我正在使用BeginReceivefromSocket从电子邮件接收数据 我创建了一个StringBuilder,将其放在BeginReceive方法的最后一个位置,即对象状态中的 它可以工作,但是StringBuilder使用了奇怪的字符。电子邮件中出现的不是一个基本的葡萄牙语名字(João Gelásio),而是Jo=E3o Gel=E1sio 我不明白问题是出在StringBuilder配置上,还是在使用BeginReceive阅读电子邮件时需要做一些技巧 有人能帮我吗 提前谢谢 它可以工

我正在使用
BeginReceive
from
Socket
从电子邮件接收数据

我创建了一个
StringBuilder
,将其放在BeginReceive方法的最后一个位置,即
对象状态中的

它可以工作,但是
StringBuilder
使用了奇怪的字符。电子邮件中出现的不是一个基本的葡萄牙语名字(João Gelásio),而是Jo=E3o Gel=E1sio

我不明白问题是出在
StringBuilder
配置上,还是在使用
BeginReceive
阅读电子邮件时需要做一些技巧

有人能帮我吗

提前谢谢

它可以工作,但StringBuilder的角色很奇怪。电子邮件中显示的不是一个基本的葡萄牙语名字(João Gelásio),而是Jo=E3o Gel=E1sio

看起来这只是一个文本编码的问题。应该有指定此的标题

请注意,这与您使用的是异步还是同步API无关


理想情况下,使用专用的邮件API来处理POP3,而不是编写自己的低级处理程序。它应该为您涵盖所有这些内容。

我正在使用邮件API来实现这一点,但我认为这不包括在内。当我在邮箱中看到邮件时,一切都正常。@Gelásio:如果你直接与套接字对话,那就真的没有使用邮件API。。。如果是的话,那就是一个非常薄的。是的,我希望它在邮箱中可以正常运行-因为邮件客户端正确理解协议(包括引用的可打印协议)。我使用的是:@Gelásio:那么,为什么您直接处理套接字呢?API不是为您完成了所有这些吗?乍一看,它似乎可以为您完成所有的解析工作。@Gelásio:这表明它基本上不是一个好的邮件API。我建议你找一个更好的。