路径中的非法字符

问题描述 投票:0回答:1

我正在尝试使用smtp客户端发送带附件的邮件。当我尝试添加这样的附件时,一切顺利:

System.Net.Mail.Attachment attachment;
attachment = new System.Net.Mail.Attachment(@"C:\icon.jpg");
mail.Attachments.Add(attachment);

但是当我尝试从控制台读取路径时:

string path = Console.Read();
System.Net.Mail.Attachment attachment;
attachment = new System.Net.Mail.Attachment(path);
mail.Attachments.Add(attachment);

我得到了例外

路径中的非法字符

有没有人可以向我解释为什么它不起作用?

c# smtp email-attachments illegal-characters
1个回答
1
投票

您的代码的问题是Console.Read() function旨在只读取输入中的下一个字符。

您应该使用Console.ReadLine(),它将从输入中读取整行。

string path = Console.ReadLine();
System.Net.Mail.Attachment attachment;
attachment = new System.Net.Mail.Attachment(path);
mail.Attachments.Add(attachment);
© www.soinside.com 2019 - 2024. All rights reserved.