我是C#文件处理的新手,我正在编写一个非常简单的程序。代码如下:
class MainClass
{
public static void Main()
{
var sw = new StreamWriter("C:\\Users\\Punit\\Desktop\\hello.txt");
sw.Write("HelloWorld" +Environment.NewLine);
sw.Write("ByeWorld");
sw.Close();
Console.ReadLine();
}
}
上面的代码在文本文件中产生以下预期结果:
HelloWorld
ByeWorld
我还写了一些像这样修改过的代码版本:
class MainClass
{
public static void Main()
{
var sw = new StreamWriter("C:\\Users\\Punit\\Desktop\\hello.txt");
sw.Write("HelloWorld\n");
sw.Write("ByeWorld");
sw.Close();
Console.ReadLine();
}
}
此处不使用
Environment.Newline
我直接将“\ n”添加到“HelloWorld”行。 这产生了以下输出(在文本文件中):
HelloWorldByeWorld
我的问题是为什么第二段代码不起作用? (不在文本文件中生成换行符)
答案 0 :(得分:8)
请尝试
StreamWriter sw = new StreamWriter("C:\\Users\\Punit\\Desktop\\hello.txt");
sw.Write("HelloWorld \r\n");
sw.Write("ByeWorld");
sw.Close();
Console.ReadLine();
您可以通过here
阅读答案 1 :(得分:2)
您也可以尝试使用
sw.WriteLine("HelloWorld");
sw.WriteLine("ByeWorld");
答案 2 :(得分:1)
将其更改为“sw.WriteLine”。像c ++一样,它调用换行符。你也可以 读这个: Create a .txt file if doesn't exist, and if it does append a new line
答案 3 :(得分:1)
试
sw.Write("HelloWorld\\n");
而不是
sw.Write("HelloWorld\n");