C# 使用指定的dickupdirectory将电子邮件保存到.eml文件会在电子邮件正文中创建双小数点
我想验证保存到磁盘的.eml文件中的电子邮件正文内容。 我已将以下部分添加到我的App.config文件中:C# 使用指定的dickupdirectory将电子邮件保存到.eml文件会在电子邮件正文中创建双小数点,c#,email,save,app-config,decimal-point,C#,Email,Save,App Config,Decimal Point,我想验证保存到磁盘的.eml文件中的电子邮件正文内容。 我已将以下部分添加到我的App.config文件中: <system.net> <mailSettings> <smtp deliveryMethod="SpecifiedPickupDirectory"> <specifiedPickupDirectory pickupDirectoryLocation="d:\temp\emails\"/>
<system.net>
<mailSettings>
<smtp deliveryMethod="SpecifiedPickupDirectory">
<specifiedPickupDirectory pickupDirectoryLocation="d:\temp\emails\"/>
</smtp>
</mailSettings>
</system.net>
当我取出config部分并将电子邮件发送到outlook收件箱时,我没有收到此问题。
例如:
ABC, XYZ, 2.00, 0.19609, 0.2117772
正确值和错误值总是相同的。
我不希望保存文件会修改内容。
非常感谢您对这里可能发生的事情提供的任何帮助。据我所知,这是意料之中的,因为生成的文件不应该是直接副本,而是遵循rfc822规范,请参阅
如果您想将文件输出与输入进行比较,那么我认为您需要找到/编写一个例程,将rfc822解码回普通测试。谢谢您提供的信息。了解这一点很有用,而且本规范似乎将小数点显示为一个特殊字符。我目前正在寻找一个c例程来解码rfc822回到纯文本,如果有人知道的话。我注意到,当我在记事本中打开.eml文件时,下面的标题被设置为Content Type:text/plain;charset=us-ascii。请参阅链接,谢谢。我无法使用此链接中的已接受答案作为解决方案,因为我正在运行Windows 7。我实际上使用的是前面提到的LumiSoft Mime解析器,但在mimeEntity.DataText属性中存在双小数点问题。可能值得尝试链接中提到的不同mime解析器。我曾尝试在Sasa提供的链接中使用另一个mime解析器,但也遇到了同样的问题。我寻找代码将rfc822解码回普通测试,但没有使用任何运气:当我用记事本打开.eml文件时,双小数点问题只出现在行的第一个字符是小数点的值上。例如:ABC,XYZ,2.00,0=…19609,0.2117772,现在我求助于黑客emailLineRead.Replace。消除意外行为,但这显然不是我想要做的。也许我和我的RFC混在一起了。看见
ABC, XYZ, 2.00, 0.19609, 0.2117772