我已经完成了数千次这样的事情并且无法为我的生活找到原因,为什么下面的StreamReader会抛出这个错误。运行Visual Studios 2010和.Net 4.0。它的旧东西,但它从来没有给我带来问题。
var listOfEmailss = new List<string>();
string emailFrom = email.Text.Trim();
string pass = password.Text.Trim();
StreamReader tr = new StreamReader(@"C:\Users\Tom\Desktop\emailTest.txt");
string line = "";
while ((line = tr.ReadLine()) != null)
{
listOfEmailss.Add(line.Split(',').Last().Trim());
}
答案 0 :(得分:2)
This answer表示字符串中可能存在隐藏的unicode字符。删除它并手动重新输入。
答案 1 :(得分:1)
这很烦人不是吗。我过去曾经面对过它。如果您已从Windows资源管理器或其他位置复制路径,则可能存在已隐藏到路径字符串中的字符。我建议你明确删除文件路径并手动输入。
应该对它进行排序。
要确认复制相同的路径(您现在拥有的)并尝试创建FIleInfo对象。我猜你也会遇到同样的例外。
答案 2 :(得分:1)
问题是文件路径中嵌入了unicode字符。具体来说,在最开始的引号和c之间有一个“从左到右嵌入”字符。
我会删除这些字符并重新输入。