【发布时间】:2012-11-01 01:50:38
【问题描述】:
我的 C# Stream Writer 有问题。 我使用以下代码:
//Constructor
public EditorTXTFile
{
FileStream f = File.Create(System.IO.Directory.GetCurrentDirectory() + "\\Output.txt");
f.Close();
}
//Function AddText
public void AddLogFileText(string text)
{
string text = "l1\n\rl2\n\rl3\n\nl5";
StreamWriter writer = new StreamWriter(System.IO.Directory.GetCurrentDirectory() + "\\Output.txt", true);
writer.Write(text);
writer.Close();
}
当我打开 Output.txt 时,它显示为 \n 或 \r 一个 █(这意味着不可显示的符号)并且整个字符串在一行中...... 以后应该文本交出函数,所以我不能用.WriteLine写文本,因为我不知道实际的字符串是在同一行还是在新行。
是什么让我错了?
感谢您的帮助。
【问题讨论】:
-
试试
\r\n而不是\n\r -
或者更好的是,
writer.WriteLine会为您解决问题 -
这里的答案也有一些有用的信息:stackoverflow.com/questions/1885900/…
-
但是当我只写一个 \n (By l5) 时它也应该去。还是不行?
-
对您的问题没有任何影响,但您应该将 StreamWriter 调用包装在
using语句中。
标签: c# newline streamwriter