我正在尝试读取我创建的文件,其中包含整个程序中的所有日志行.我有以下鳕鱼:
private string ReadEmailLog(string EmailLog)
{
TextReader tr = new StreamReader(EmailLog);
tr.ReadLine();
tr.Close();
}
Run Code Online (Sandbox Code Playgroud)
我需要读取EmailLog文件的每一行,然后将其返回到一个名为message的字符串中.我怎样才能让这个方法返回整个日志文件,每一行?
你可以使用File.ReadAllText或File.ReadAllLines.
如果您使用的是.NET 4.0,还可以使用File.ReadLines:
var files = from file in Directory.EnumerateFiles(@"c:\",
"*.txt", SearchOption.AllDirectories)
from line in File.ReadLines(file)
where line.Contains("Microsoft")
select new
{
File = file,
Line = line
};
foreach (var f in files)
{
Console.WriteLine("{0}\t{1}", f.File, f.Line);
}
Run Code Online (Sandbox Code Playgroud)
这允许您将文件I/O作为LINQ操作的一部分.