C# 仅阅读以特定前缀开头的行

C# 仅阅读以特定前缀开头的行,c#,C#,在我的C#程序中,我试图从一个txt文件中只读取以先生、女士或女士开头的行,然后将这些行打印到一个单独的txt文件中,但每当我运行我所拥有的时,都不会写入新文件,所以它只是空白 以下是我所拥有的: var prefixes = new List<string> { "Mr.", "Mrs.", "Ms." }; var nameIDLines = File.ReadAllLines(filePath) .Where(line => prefixes.All(prefix

在我的C#程序中,我试图从一个txt文件中只读取以先生、女士或女士开头的行,然后将这些行打印到一个单独的txt文件中,但每当我运行我所拥有的时,都不会写入新文件,所以它只是空白

以下是我所拥有的:

var prefixes = new List<string> { "Mr.", "Mrs.", "Ms." };
var nameIDLines = File.ReadAllLines(filePath)
    .Where(line => prefixes.All(prefix => line.StartsWith(prefix)))
    .ToList();

filteredAsString = string.Join(Environment.NewLine, nameIDLines);

using (StreamWriter outputFile = new StreamWriter(mydocpath + @"\nameIDLines.txt"))
{
    outputFile.Write(filteredAsString);
}
var前缀=新列表{“先生”、“女士”、“女士”};
var nameIDLines=File.ReadAllLines(文件路径)
.Where(line=>prefixes.All(prefix=>line.StartsWith(prefix)))
.ToList();
filteredAsString=string.Join(Environment.NewLine,nameIDLines);
使用(StreamWriter outputFile=newstreamwriter(mydocpath+@“\nameIDLines.txt”))
{
Write(filteredAsString);
}
您应该使用任何:

var nameIDLines = File.ReadAllLines(filePath)
    .Where(line => prefixes.Any(prefix => line.StartsWith(prefix)))
    .ToList();
您应使用以下任何一种:

var nameIDLines = File.ReadAllLines(filePath)
    .Where(line => prefixes.Any(prefix => line.StartsWith(prefix)))
    .ToList();

All
替换为
Any
,因为字符串不能以所有前缀开头,只能以其中一个前缀开头

var nameIDLines = File.ReadAllLines(filePath)
    .Where(line => prefixes.Any(prefix => line.StartsWith(prefix)))
    .ToList();

All
替换为
Any
,因为字符串不能以所有前缀开头,只能以其中一个前缀开头

var nameIDLines = File.ReadAllLines(filePath)
    .Where(line => prefixes.Any(prefix => line.StartsWith(prefix)))
    .ToList();

All
替换为
Any
All
替换为
Any
哦,好的,我现在明白了。我对c#还很陌生,所以这可以解释为什么我会这么看,这是有道理的。非常感谢。哦,好吧,我现在明白了。我对c#还很陌生,所以这可以解释为什么我会这么看,这是有道理的。非常感谢。哦,好吧,我现在明白了。我对c#还很陌生,所以这可以解释为什么我会这么看,这是有道理的。非常感谢。哦,好吧,我现在明白了。我对c#还很陌生,所以这可以解释为什么我会这么看,这是有道理的。非常感谢。