我有一个纯文本文件.要求是从文本文件中读取有效的电子邮件地址.
样品
test1 test@yahoo.com test2 test@gmail.com
我试过读取文本文件如下,
var emails = File.ReadAllLines(@"foo.txt");
我正在使用C#4.0
解决方法
如果只有你的电子邮件行有@字符,你可以使用
var emails = File.ReadAllLines(@"foo.txt").Where(line => line.Contains("@"));
好的,我承认了.这是我见过的最糟糕的电子邮件验证:)让我们更深入.您可以使用MailAddress
课程检查您的线路.让我们定义一种检查电子邮件地址是否有效的方法;
public bool IsValidMailAddress(string s) { try { MailAddress m = new MailAddress(s); return true; } catch (FormatException) { return false; } }
然后我们可以使用;
var emails = File.ReadAllLines(@"foo.txt").Where(line => IsValidMailAddress(line));