c# - 限制控制台中的输入

标签 c# input console console-application readline

我在做迷宫游戏。我如何限制Console.Read()之后用户输入的字符数?
我需要限制它,以便如果用户输入一个很长的字符串,它将覆盖我的迷宫。
如果您打算告诉我之后再改写迷宫,我会说不。我不能相信我,这将需要我进行另一个漫长的过程。我只想要一个简单的代码来限制输入。

这是演示问题的屏幕截图。您在屏幕上看到asdasjhasd....吗?看到它如何弄乱迷宫?我想限制用户可以输入的字符数,以使它不会到达迷宫。你们能告诉我使用什么代码吗?



解决了

string str = string.Empty;
while (true)
{
    char c = Console.ReadKey(true).KeyChar;
    if (c == '\r')
        break;
    if (c == '\b' )
    {
        if (str != "")
        {
            str = str.Substring(0, str.Length - 1);
            Console.Write("\b \b");
        }
    }
    else if (str.Length < limit)
    {
        Console.Write(c);
        str += c;
    }
}

最佳答案

解决方法是改用Console.ReadKey

string str = string.Empty;
do
{
    char c = Console.ReadKey().KeyChar;
    if(c == '\n')
        break;

    str += c;
}while(str.Length < 7);

关于c# - 限制控制台中的输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6723755/

相关文章:

c# - .NET Micro Framework 不安全代码

python - 将输入(来自标准输入)转换为列表

jquery - 'Gravity Forms' 输入按钮被点击时触发jquery

c# - 更改 devexpress 网格控件列标题标题

c# - 有没有办法将环境变量传递给 Visual Studio 项目并在 C# 中使用它?

javascript - 如果时间从时钟改变,输入将如何随着时钟的值改变?

api - 如何更正 URL Inspection API 错误?

php - 中止和恢复 Symfony 控制台命令

控制台界面教程和提示 (pdcurses)

c# - 将泛型方法转换为异步导致泛型参数出现问题