2

当我执行这个 .Net 代码时:

   var builder = new StringBuilder();
   builder.AppendLine("Line One");
   builder.AppendLine("Line Two");
   var result = builder.ToString();

result 的值字面意思是:

"Line One\r\nLine Two\r\n"

为什么 .ToString() 将换行符转换为 "\r\n" 文本,有没有办法防止这种情况并让字符串实际上具有真实的(隐藏的)换行符?

4

1 回答 1

2

在调试器中,它显示“转义字符”,即回车换行符标准 windows eol 字符串。如果您要将其打印出来以说明命令行或文件。您将获得一条实际的新线路。在 c# 中,所有转义字符都以 '\' 开头。所以 \r\n,\r 是回车,\n 是换行或换行。 http://en.wikipedia.org/wiki/Newline

还要在 c# 中正确编码

   StringBuilder builder = new StringBuilder();
   builder.AppendLine("Line One");
   builder.AppendLine("Line Two");
   String result = builder.ToString();

这也是写同一件事的另一种方式

String result = "Line One\r\nLine Two\r\n";
于 2013-02-27T20:07:16.670 回答