是\ n等效于.NET中的Environment.NewLine吗?

时间:2011-06-04 22:33:53

标签: c# .net newline

  

可能重复:
  Difference between “\n” and Environment.NewLine

大家好!

我理解它的方式,当我们在格式字符串中使用.符号表示double时,它不代表“dot”,它实际上意味着“当前环境中使用的小数分隔符”,所以如果我们正在工作对于非美国文化设置,输出可以是2,00而不是2.00。这非常方便。

现在,\n(LF)特殊符号也是如此吗?在解析格式字符串时它是否会成为System.Environment.NewLine符号,或者无论系统设置如何,它都将始终为0x0A值吗? Environment.NewLine有点罗嗦,我想知道我是否可以安全地使用\n

提前致谢。

5 个答案:

答案 0 :(得分:5)

答案 1 :(得分:2)

使用它的目的是为了实现操作系统之间的可移植性

http://msdn.microsoft.com/en-us/library/system.environment.newline.aspx

  

包含“\ r \ n”的字符串   非Unix平台或字符串   包含Unix平台的“\ n”。

答案 2 :(得分:1)

如果您不想输入System.Environment.NewLine,请将本地var设置为该值。

string n = System.Environment.NewLine;
string stringWithStuff = "text!" + n + "moretext!";

答案 3 :(得分:0)

您可能应该知道文本编写者也有NewLine属性

using System;

//  ...
Console.Write("eenie{0}meenie{0}minie{0}moe", Console.NewLine);
Console.Out.Write("eenie{0}meenie{0}minie{0}moe", Console.Out.NewLine);
Console.Error.Write("eenie{0}meenie{0}minie{0}moe", Console.Error.NewLine);

从头脑中我不太确定是否总是与System.Environment.NewLine相同。参看文档

答案 4 :(得分:0)

参考Environment.NewLine Property

  

包含“\ r \ n”的字符串   非Unix平台或字符串   包含Unix平台的“\ n”。

此外:

  

NewLine的属性值是a   不断定制专门为   目前的平台和   .NET Framework的实现。

     

NewLine可以结合使用   使用特定语言的换行支持   例如转义字符'\ r'和   '\ n'在Microsoft C#和C / C ++中,或者   Microsoft Visual Basic中的vbCrLf。