【问题标题】:Recognize arrow keys in Java Scanner or Console application识别 Java Scanner 或 Console 应用程序中的箭头键
【发布时间】:2016-03-07 19:43:21
【问题描述】:

我正在编写一个使用ScannerConsole 来获取用户输入的Java 应用程序。我想添加命令历史支持,以便用户可以使用箭头键来搜索以前的输入(类似于终端)。有没有办法做到这一点?现在,当我使用ScannerConsole 时,按下箭头键时会出现^[[A 之类的奇怪符号。

我已阅读有关 KeyListenerKeyEvent 的信息,但我的应用程序不使用 GUI。

谢谢!

【问题讨论】:

  • 难道你不能仍然使用按键监听器来监听按键事件,然后使用回车符覆盖^[[A 之类的输出并显示历史记录中的命令吗?
  • KeyListener 仅适用于 GUI 应用程序。我不是在开发 GUI 应用程序。

标签: java console java.util.scanner user-input


【解决方案1】:

好问题 - 已 +1。在 Windows 上,我将 SetConsoleMode 更改控制台以获取原始输入,但在 *Nix 上似乎涉及更多工作。不幸的是,我现在没有任何代码可以显示给您,但请查看此链接,看看是否有帮助。

http://www.darkcoding.net/software/non-blocking-console-io-is-not-possible/

【讨论】:

  • 感谢您的链接!这很有帮助。 Jline 是要走的路。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-05-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多