【问题标题】:C# Console Key EventC# 控制台按键事件
【发布时间】:2013-11-22 16:46:41
【问题描述】:

我正在创建一个小应用程序,它读取文本文件(存储为字符串数组)并通过简单的按键对内容进行排序。 我如何分配一个字符,例如。 'f' 显示某个数组?例如,我只需按“f”,控制台就会显示我的文本文件的名字,即数组 [0]。这是一个sn-p:

        //Console Read Key method???
        //
        if (key.KeyChar == 'f')
        {
            Console.WriteLine(strArray[0]);

        }

我意识到 SO 上有很多与此有关的内容,但没有任何用处。这是一个我无法解决的简单问题!不要担心排序我只需要一个特定的数组来显示。感谢您的帮助

【问题讨论】:

  • 看看这篇 SO 帖子 [Handle Key Press in console][1] [1]: stackoverflow.com/questions/8898182/…
  • 您尝​​试过,例如,使用简单的 foreach 或 LINQ 在哪里?告诉我们它在哪里不起作用......
  • 如果你想打印出数组中的所有项目,你可以使用类似 "Array.ForEach( strArray, (line) => Console.WriteLine(line) );"
  • 只使用Console.ReadKey() 有什么问题?并不是你不知道它的存在。
  • 嗯,基本上我想最终按字段(姓名、姓氏、年龄等)排序,每个字段都分配给一个字母,这样我就可以做到:“如果(按下a){输出这个}其他if (b ispressed) {output this}" 等等

标签: c# key console-application keyevent


【解决方案1】:

使用 Console.ReadKey() 方法。它返回一个 ConsoleKeyInfo,您可以检查它是否按下了“f”键。

http://msdn.microsoft.com/en-us/library/system.console.readkey(v=vs.110).aspx

【讨论】:

    【解决方案2】:

    获取密钥很简单,可以使用Console.ReadKey()方法。这将返回 ConsoleKeyInfo,这是一个包含已按下键的结构。

    您可以使用Dictionary,其中字母为Key,数组为Value

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-01-05
      • 1970-01-01
      • 1970-01-01
      • 2013-03-21
      • 1970-01-01
      • 1970-01-01
      • 2011-10-28
      相关资源
      最近更新 更多