2016-09-19 42 views
0

我正在制作一个程序,我需要用户输入是不可见的,我读var key = System.Console.ReadKey(true);就是这样做的。 做什么,我需要,但我需要与多个字符的字符串,所以我所做的就是如何在循环中使用readkey编写一个字符串?

string Choice1=null; 
User1Input: 
while (true) 
{ 
    var key = System.Console.ReadKey(true); 
    if (key.Key == ConsoleKey.Enter) 
    { 
     break; 
    } 
    Choice1 += key; 
} 

正在发生的事情是,key根本不读什么,因为即使我按回车,循环不关闭。

+2

你为什么不能阅读整行'System.Console.ReadLine()'代码? – Rahul

+0

我现在试过了,它的下划线是红色的。另外,我在这个网站上看过一些地方,你不能让输入行看不见,只有一个键。 –

回答

1

因此,您的唯一目的是在用户输入控制台时隐藏角色。在这种情况下,您处于正确的轨道,并且您的发布代码看起来不错,除了最后一行代码为Choice1 += key;。它应该是

Choice1 += key.KeyChar; 

你贴有位修改

string choice1=null; //casing of variable names 
while (true) 
{ 
    var key = System.Console.ReadKey(true); 
    if (key.Key == ConsoleKey.Enter) 
     break; 

    choice1 += key.KeyChar; 
} 
+0

就是这样,非常感谢! –

相关问题