如何保持控制台窗口打开

问题描述 投票:34回答:12

当我运行程序时,控制台窗口似乎正在运行并关闭。如何保持打开状态以查看结果?

class Program
{
    public class StringAddString       
    {                        
        public virtual void AddString()
        {
            var strings2 = new string[] { "1", "2", "3", "4", "5","6", "7", "8", "9"};

            Console.WriteLine(strings2);
            Console.ReadLine();
        }
    }

    static void Main(string[] args)
    {          
        StringAddString s = new StringAddString();            
    }
}
c# console-application
12个回答
11
投票

您忘记了调用方法:

static void Main(string[] args)
{          
    StringAddString s = new StringAddString();  
    s.AddString();
}

它应该停止您的控制台,但是结果可能不是您期望的,您应该稍微更改一下代码:

Console.WriteLine(string.Join(",", strings2));

0
投票

对于Visual C#控制台应用程序使用:


0
投票

[如果使用Visual Studio,只需使用Crtl + F5而不是F5运行应用程序。完成执行后,这将使控制台保持打开状态。


0
投票

为了能够在不关闭输入的情况下为其提供输入,您可以将代码包含在while循环中


80
投票

将Console.Read()作为程序的最后一行。这样可以防止它在您按下某个键之前关闭]

static void Main(string[] args)
{
    StringAddString s = new StringAddString();
    Console.Read();            
}

30
投票

如果要在调试时将其保持打开状态,但在不调试时仍使其正常关闭,则可以执行以下操作:

if (System.Diagnostics.Debugger.IsAttached) Console.ReadLine();

[就像其他答案一样,对Console.ReadLine()的调用将使窗口保持打开状态,直到按Enter键为止,但是Console.ReadLine()仅在连接了调试器的情况下才被调用。


19
投票

我知道两种方法

1)Console.ReadLine()在程序结尾。缺点,您必须更改代码并且必须记得将其取出]

2)在调试器CONTROL-F5外部运行,这将在Visual Studio外部打开一个控制台窗口,完成后该窗口将不会关闭。优势,您不必更改代码。缺点,如果有异常,它将不会掉入调试器中(但是,当您获得异常时,只需在调试器中重新运行它即可)


12
投票
Console.ReadKey(true);

此命令比readline更好,后者仅在您按Enter键时通过,并且true参数还在读取结果时隐藏了难看的闪烁光标:)然后任何按键都终止]]


5
投票

Console.ReadKey();方法的最后一行写main()。此行阻止完成控制台。希望对您有帮助。


5
投票

您可以在不需要用户输入的情况下进行处理。


1
投票

最后使用Console.Readline()。您的代码只有在您手动关闭后才会关闭。由于Readline等待需要输入代码的输入,因此您的控制台将一直打开,直到您键入一些输入。


0
投票

请务必使用Console.ReadLine();以防止关闭前面的Console.WriteLine("");消息。

© www.soinside.com 2019 - 2024. All rights reserved.