在文件中写下person的内容
FirstName:Abcd
SecondName:Tsfsdfs
为此,我写了一个示例应用程序
namespace BinaryStream
{
class Program
{
static void Main(string[] args)
{
StreamWriter binWriter = new StreamWriter(@"c:\happybirthday.txt");
string name = "Sachin";
string secondname = "tendulkar";
string wishes = "happy birthday";
string firstname = string.Format("FirstName: {0} \n", name);
binWriter.Write(firstname);
string sn = string.Format("SecondName: {0} \n", secondname);
binWriter.Write(sn);
binWriter.Close();
}
}
}
如果我打开记事本中的内容,则字符串不会显示在下一行中 这是什么原因?格式部分是否正确?
答案 0 :(得分:6)
您需要使用WriteLine,而不是Write。写入不会在行尾添加换行符\ cr。在文本中放置\ n只会放置换行符,并且不会放置回车符。
答案 1 :(得分:3)
您需要回车和换行。您只有一个换行符。将\ n替换为\ r \ n,您将在记事本中正确地看到它。
答案 2 :(得分:1)
您可能会发现需要回车符(CR)和换行符(LF)的组合,而不仅仅是LF。
所以 - 在你的代码中,用\ r \ n
替换\ n答案 3 :(得分:1)
对于初学者,您正在创建二进制文件而不是文本文件。这可能会让记事本感到困惑。
除了在C#中,\ n仅表示LF,您必须使用\ r \ n(CR-LF)。
请写下:
string[] lines = {"FirstName: Abcd", "SecondName: Tsfsdfs"};
System.IO.File.WriteAllLines(@"c:\happybirthday.txt", lines);
答案 4 :(得分:0)
Windows中的新行\n\r
。但有些程序足够聪明,只能理解\n
。其他人,比如记事本 - 不是。