C# StreamReader—;文件解析器—;检查行内容
我已成功使C#C# StreamReader—;文件解析器—;检查行内容,c#,tokenize,streamreader,C#,Tokenize,Streamreader,我已成功使C#StreamReader工作: using (StreamReader fileParser = new StreamReader(tbFileSelection.Text)) { String line = fileParser.ReadToEnd(); Console.WriteLine(line); } 我目前正在将文件的每一行写入控制台。现在,我希望遍历每一行并查找特定的标记-[TAG1],如果该行以[TAG1]开头-我希望在控制台中显示整行。请注意,该文件不是基
StreamReader
工作:
using (StreamReader fileParser = new StreamReader(tbFileSelection.Text))
{
String line = fileParser.ReadToEnd();
Console.WriteLine(line);
}
我目前正在将文件的每一行写入控制台。现在,我希望遍历每一行并查找特定的标记-[TAG1],如果该行以[TAG1]开头-我希望在控制台中显示整行。请注意,该文件不是基于XML的。有人能提出这个想法的前进方向吗?我认为我需要标记字符串行?您可以使用
StartsWith
方法从行中进行筛选:
lines = File.ReadLines(tbFileSelection.Text)
.Where(line => line.StartsWith("[TAG1]"));
foreach (var line in lines)
{
Console.WriteLine(line);
}
foreach(File.ReadLines(path.Where(l=>l.StartsWith(“[TAG1]”))中的var行)Console.WriteLine(行)代码>行是否在“lines=”数组的上下文中?如果是这样,在C#中如何声明不定长数组?@JHarley1:不,它是IEnumerable,您可以使用列表或动态长度。我现在得到的是:IEnumerable lines=File.ReadLines(tbFileSelection.Text)。其中(line=>line.StartsWith(“[TAG1]”);foreach(行中的行){Console.WriteLine(行);}我只是对我的“行”定义有问题。