for (int i = 0; i < clipAnimations.Length; i++)
{
clipAnimations[i].name = "magic_" + name;
string n = clipAnimations[i].name + Environment.NewLine;
File.WriteAllText(@"d:\test\names.txt", n);
}
我添加了Environment.NewLine,但最后仍然只看到一行。
答案 0 :(得分:2)
您应该改用File.AppendText
。目前,您正在使用File.WriteAllText
来创建文件(如果文件不存在),否则在将字符串写入文件之前清除现有文件。但是,File.AppendText
如果不存在则创建文件(如果存在,则不清除文件,与File.WriteAllText
不同),然后将字符串附加到文件末尾。
using (StreamWriter w = File.AppendText(@"d:\test\names.txt"))
{
for (int i = 0; i < clipAnimations.Length; i++)
{
clipAnimations[i].name = "magic_" + name;
string n = clipAnimations[i].name; // no need to append Environment.NewLine
w.WriteLine(n);
}
}
您还应该考虑在StreamWriter
块中使用using
,因为这样可以避免多次打开和关闭文件。
编辑::由于此处使用WriteLine
方法,该方法可以为您处理行尾,因此您无需在字符串后附加Environment.NewLine。谢谢@Julo!
答案 1 :(得分:1)
使用File.AppendText()
,WriteText()
创建一个新文件或覆盖现有文件,而追加将创建一个新文件或追加到现有文件。