如何添加新的行到文本文件

我想在 date.txt 文件中添加一行带文本的内容,但是 app 没有将其添加到现有的 date.txt 文件中,而是创建了一个新的 date.txt 文件。.

TextWriter tw = new StreamWriter("date.txt");


// write a line of text to the file
tw.WriteLine(DateTime.Now);


// close the stream
tw.Close();

我想打开 txt 文件,添加一些文本,然后关闭它,稍后在单击某些内容之后: 打开 date.txt,添加文本,然后再次关闭它。

所以我可以得到:

按下按钮: txt open-> 添加当前时间,然后关闭它。另一个按钮按下,文本打开-> 添加文本“确定”,或“不确定”在同一行,然后再次关闭。

所以我的文本文件看起来是这样的:

2011-11-24 10:00:00 OK
2011-11-25 11:00:00 NOT OK

我怎么能这么做? 谢谢!

405462 次浏览

你可以很容易地做到这一点

File.AppendAllText("date.txt", DateTime.Now.ToString());

如果你需要换行

File.AppendAllText("date.txt",
DateTime.Now.ToString() + Environment.NewLine);

无论如何,如果你需要你的代码这样做:

TextWriter tw = new StreamWriter("date.txt", true);

第二个参数告诉要附加到文件。
检查 给你 StreamWriter 语法。

没有新台词:

File.AppendAllText("file.txt", DateTime.Now.ToString());

然后得到 OK 后的新行:

File.AppendAllText("file.txt", string.Format("{0}{1}", "OK", Environment.NewLine));

为什么不用一个方法调用:

File.AppendAllLines("file.txt", new[] { DateTime.Now.ToString() });

它将为您执行换行操作,并允许您一次插入多行。

var Line = textBox1.Text + "," + textBox2.Text;


File.AppendAllText(@"C:\Documents\m2.txt", Line + Environment.NewLine);

尝试使用以下代码创建 Unity3D 文本文件并将内容写入其中。

void CreateLog() {
string timestamp = DateTime.Now.ToString("dd-mm-yyyy_hh-mm-ss");
PlayerPrefs.SetString("timestamp", timestamp);
string path = Application.persistentDataPath + "/" + "log_" + timestamp + ".txt";
// This text is added only once to the file.
if (!File.Exists(path)) {
// Create a file to write to.
using (StreamWriter sw = File.CreateText(path))
{
sw.WriteLine(DateTime.Now.ToString() + ": " + "App initialised");
}
} else {
// This text is always added, making the file longer over time
// if it is not deleted.
using (StreamWriter sw = File.AppendText(path)) {
sw.WriteLine(DateTime.Now.ToString() + ": " + "App initialised");
}
}


// Open the file to read from.
using (StreamReader sr = File.OpenText(path)) {
string line = "";
while ((line = sr.ReadLine()) != null)
{
Debug.Log(line);
}
}
}