在第一行中搜索普通的新行

Searching for plain new line in the first line

我想检查文本文件中的第一行是否只是 Linux 格式的普通新行,我创建了这段代码

string line1 = File.ReadLines(csvFileName).First();

string pat = @"\n";
Regex r = new Regex(pat);
bool check = r.IsMatch(line1);

if (check == true)
{

}

我有一个文件开头以普通 LF 换行符开头,但结果始终为 FALSE。知道我做错了什么吗?

ReadLines\n 个字符解释为换行符。它们永远不会添加到您返回的 IEnumerable 的元素中。你会得到一个空行:

string line1 = File.ReadLines(csvFileName).FirstOrDefault();
if (line1 != null && line1.Length == 0) {
    Console.WriteLine("First line is empty.");
}

您可以检查该行是否为空。但是,对于系统可接受的任何行分隔符,您都会得到一个空行,而不仅仅是 '\n'.