use*_*ser 0 .net c# text-files
我创建了一个Windows窗体应用程序,我有一个TextBox文本作为文件位置,如下所示:C:\DATA\FOLDER.
此外,我有一个文本文件,d:\data\test.txt其中包含许多行,但有一个定义的行Location="".
我如何复制行中文TextBox本文件test.txt中指定的位置Location="",而不提及行号?
你可以在一行中完成
var path = @"d:\data\test.txt";
File.WriteAllLines(path, File.ReadAllLines(path)
.Select(line => line.StartsWith("Location=\"")
? string.Format("Location=\"{0}\"", textBox1.Text)
: line));
Run Code Online (Sandbox Code Playgroud)
首先,您读取文件中的所有行,如果其中任何行以"Location ="开头,则它将被文本框中的位置替换.最后,您将结果写回文件.
如果你不喜欢在一行中做(并且对我而言没有为它投票),那么你可以将它拆分
var path = @"d:\data\test.txt";
var lines = File.ReadAllLines(path);
var modifiedLines = lines.Select(line =>
{
if (line.StartsWith("Location=\""))
{
return string.Format("Location=\"{0}\"", textBox1.Text);
}
else
{
return line;
}
});
File.WriteAllLines(path, modifiedLines);
Run Code Online (Sandbox Code Playgroud)
我认为有时候编写更多代码会降低可读性!