0

我正在尝试将字符串导出到带有时间戳的文本文件。我正在使用 File.AppendAllText("C:\list.txt", text); 制作文本文件。问题在于 - 第一次运行将保存文本,任何后续运行都会将文本放在第一次运行文本的下方。我希望它像最新的文本一样位于顶部,因为我希望最新的时间戳位于顶部。

谢谢斯里

4

3 回答 3

1

将文本添加到文件的开头是一项非常昂贵的操作。基本上,您需要读取整个文件,然后将其与添加的文本一起写回,因此文件越大,速度就越慢。

如果您想首先显示最新的项目,则在显示文件时进行反转。

于 2013-02-07T15:10:36.347 回答
0

您需要先阅读现有文件,然后将该文本附加到当前消息中。然后你可以用新的日志覆盖整个文件。

不过要小心,一旦文件大小增加,这将是更多的工作。

于 2013-02-07T15:11:25.227 回答
0
Void Method()
{
 string text = File.ReadAllText(@"c:\text.txt");

 string  NewText="This is new Text " + DateTime.Now.TimeOfDay;

 File.WriteAllText(@"c:\text.txt", NewText + Environment.NewLine  + text);

}
于 2013-02-07T16:15:00.400 回答