【发布时间】:2017-05-09 14:50:12
【问题描述】:
这似乎是 LinqPad 的问题。
当使用带有空字符串的 Console.Write 时,会在结果窗格中插入回车符和换行符。这不会发生在使用 Visual Studio 的控制台项目中。
其他信息 查看 Linqpad 中结果窗格的源代码,我看到了这一点:
<body><div id='final'>Hello|World|<br />|Hello|World</div></body>
因此,似乎由于某种原因插入了一个中断。
LinqPad 版本:v5.22.00 测试版
测试代码:
void Main()
{
Console.Write("Hello");
Console.Write("|");
Console.Write("World");
Console.Write("|");
Console.Write(""); //Writing an empty string
Console.Write("|");
Console.Write("Hello");
Console.Write("|");
Console.Write("World");
}
实际输出:
你好|世界|
|你好|世界
预期输出:
你好|世界||你好|世界
【问题讨论】:
-
如果你这样做
Console.Write(string.Empty);会发生什么?一样的吗? -
是的,它做同样的事情。我还在 4.0 版上运行了代码,它产生了相同的输出
-
听起来像 LinqPad 的问题,如果这就是您所看到的。你应该在他们的论坛上发帖,looks like you already have
-
我投票决定将此问题作为离题结束,因为应该向 LinqPad 开发人员报告。
-
@DarrenYoung - 是的,这是真的,我调整了我的脚本来检查这一点。当循环中运行的代码打印偶尔返回空字符串的方法调用的结果时,我发现了它。