请注意,我找到了一个可以更好地为我工作的工作。那就是使用字节流和解码而不是保存。因此答案是非必要的,但我仍然会对人们的任何评论感兴趣。
路径中的非法字符有问题。我已经尝试了同样的东西的许多不同版本,当然它只是我需要的路径,而且我很确定我知道它的样子!有人可以建议我做错了吗?
我正在使用http://hellowebapps.com/products/imapx/
连接和其他一切都没关系!
代码:
foreach (Message m in _imapClient.Folders["Football"].Messages)
{
m.Process();
List<Attachment> attachment = m.Attachments;
foreach (var a in attachment)
{
a.SaveFile(@"C:\FileDrop\hello.csv");
//a.SaveFile(@"C:\FileDrop\");
}
}
堆栈追踪:
System.ArgumentException:路径中的非法字符。在 System.IO.Path.CheckInvalidPathChars(String path)at System.IO.Path.GetFileName(String path)at System.IO.FileStream..ctor(String path,FileMode mode,FileAccess 访问)在ImapX.Attachment.SaveFile(String downloadLocation)
答案 0 :(得分:0)
也许试试这个:
答案 1 :(得分:0)
似乎解决此问题的唯一方法是直接从附件数据中获取字符串 - 使用Encoding.GetString() Convert.FromBase64String()
return _encoding.GetString(Convert.FromBase64String(contentStream));
然后只需保存文件:MSDN