繁体   English   中英

如何在正在读入的文本文件中添加一行文本,C#

[英]How to add a line of text to a text file being read in, C#

我正在阅读一个包含电影内容的文件,例如 ID、电影标题、流派、发行年份以及电影是否可用。

例子:

01#Inside Out#喜剧#2015#True

02#Inside Out#喜剧#2015#True

03#玩具总动员4#Family#2019#True

04#玩具总动员4#Family#2019#True

我想做的是在所有其他电影的正下方的.txt 文件中添加另一部电影。 如何提示用户输入电影的每个值,并将其保存在与电影的 rest 相同的文件中?

你需要写的行是这样的:

using (StreamWriter sw = File.AppendText("C:\\some\\path\\movies.txt")) 
{
    sw.WriteLine("New line");            
}

如何选择提供进入该文件的实际数据取决于您。 这取决于您拥有的应用程序类型,即它是 GUI 应用程序还是控制台应用程序。

在任何一种情况下,与上述类似的代码都会将 append 文本(在本例中为New line )到指定文件的末尾。

如果您想使用变量添加这些特定值,您可以将写入内容的行替换为:

sw.WriteLine($"{id}#{title} #{genre}#{year}#{available}");

...然后为每个变量提供值。 本质上,对每部电影执行以下操作(注意 - 我只是在猜测最后一个值的含义;boolean 是/否):

var id= "123";
var title = "Great misadventures in code";
var genre = "SciFi/Horror";
var year = "2021";
var available = "No";

如前所述, File.AppendAllText是要使用的方法,但请注意,它不会插入换行符,因此您必须将其包含在附加文本中,例如:

File.AppendAllText(@"path to file", $"\n{Id}#{Title}#{Genre}#{ReleaseYear}#{Available}");

其中 {} 中的变量保存用户输入的适当值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM