c# – 从文本文件中读取有效的电子邮件地址

我有一个纯文本文件.要求是从文本文件中读取有效的电子邮件地址.

文本文件不包含任何特殊字符,每行包含一个单词.

样品

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));

相关文章

目录简介使用JS互操作使用ClipLazor库创建项目使用方法简单测...
目录简介快速入门安装 NuGet 包实体类User数据库类DbFactory...
本文实现一个简单的配置类,原理比较简单,适用于一些小型项...
C#中Description特性主要用于枚举和属性,方法比较简单,记录...
[TOC] # 原理简介 本文参考[C#/WPF/WinForm/程序实现软件开机...
目录简介获取 HTML 文档解析 HTML 文档测试补充:使用 CSS 选...