(对不起英语不好我是德国人)
所以我得到了这个读出某些行的代码:
public class ZeilenLesen
{
public static string path1 = @"C:\temp\02\";
public static void ReadLine()
{
try
{
var files = from file in Directory.GetFiles(path1, "Deploytest.txt", SearchOption.AllDirectories)
from line in File.ReadLines(file)
where line.Contains("]appName")
select new
{
File = file,
Line = line
};
foreach (var app in files)
{
Console.WriteLine("{0}", app.Line);
}
Console.WriteLine("{0} files found.", files.Count().ToString());
}
catch (UnauthorizedAccessException UAEx) //Die Ausnahme, die ausgelöst wird, wenn das Betriebssystem aufgrund eines E/A-Fehlers oder eines bestimmten Typs von Sicherheitsfehler den Zugriff verweigert.
{
Console.WriteLine(UAEx.Message);
}
}
和(控制台)给我一行:[string] appName = XXX
现在我想添加一个if命令,说:
if (app.Line != "[string]appName = AAA")
{
Console.WriteLine("appname not the same");
Console.ReadLine();
}
else
{
Console.WriteLine ("appname is okay");
}
(像这样)
但由于某种原因,我无法访问App.Line:名称应用程序在当前上下文中不存在。
您不能在方法之外编写该代码。
试试这个。将第二个代码块放在foreach循环中
public class ZeilenLesen
{
public static string path1 = @"C:\temp\02\";
public static void ReadLine()
{
try
{
var files = from file in Directory.GetFiles(path1, "Deploytest.txt", SearchOption.AllDirectories)
from line in File.ReadLines(file)
where line.Contains("]appName")
select new
{
File = file,
Line = line
};
foreach (var app in files)
{
Console.WriteLine("{0}", app.Line);
if (app.Line != "[string]appName = AAA")
{
Console.WriteLine("appname not the same");
Console.ReadLine();
}
else
{
Console.WriteLine ("appname is okay");
}
}
Console.WriteLine("{0} files found.", files.Count().ToString());
}
catch (UnauthorizedAccessException UAEx) //Die Ausnahme, die ausgelöst wird, wenn das Betriebssystem aufgrund eines E/A-Fehlers oder eines bestimmten Typs von Sicherheitsfehler den Zugriff verweigert.
{
Console.WriteLine(UAEx.Message);
}
}
}