简单的 C# 代码打印随机垃圾

Simple C# Code Prints Random Garbage

using System;
class MainClass {

  public static void Main() {
    string name;
    Console.Write("Hello World: ");
    name = Console.ReadLine();
    if (name != null && name == "Test") {
      Console.WriteLine("Test input.");
    } else {
      Console.WriteLine("Test not input.");
    }
  } 

}

您好,以上是我的简单 C# 代码。我是 C# 的新手,尽管我对整个编程并不陌生。当我尝试这段代码时(我知道它在 if 语句中有冗余,这不是重点)它打印垃圾。

代码运行正常,只是这样开始:

Hello World: [6n[H[J[6n 

我不知道为什么要添加 [6n[H[J[6n.我试着查了一下,但我真的很茫然。这段代码几天前还在运行,所以可能是编译器问题。

如果有人能帮忙,那将不胜感激。

这些是 ANSI 控制台控制代码。在 ansi 中,[6n 是 "query cursor position",[h 是 "home",[j 是 "erase down" http://www.termsys.demon.co.uk/vtansi.htm

对我来说,看起来您可能正在按下 home/delete/etc 之类的键,而您 运行 所在的任何控制台应用程序都在显示它们而不是解释它们。

您 运行 使用哪种控制台?你在等待时是否按下了其他键?