2011-11-04 66 views
2

作爲一種自我實踐,我使用Java中的BF解釋器來通過控制檯執行I/O操作。然而,大多數情況下沒問題,但是,BF可能會意識到,BF一次只能輸入一個字符,包括換行符。這意味着就我所知標準控制檯輸入庫不起作用,因爲它們接受了整個字符串,然後在最後要求返回。我想要,接受下一個擊鍵,這個擊鍵符合char而不是在打印時打印它。因此,當BF要求輸入時,如果輸入a,則需要輸入a,但不會在控制檯中顯示,除非BF程序稍後輸出a高級Java控制檯輸入

我該怎麼做?

回答

1

使用的textarea寫自己的控制檯輸出/輸入,我建議使用的JLine http://jline.sourceforge.net

Terminal類有一個disableEcho()方法做你想要什麼。

0

在框架和KeyListener的

+0

他正在編寫一個命令行工具,Swing組件對此沒有幫助。 –

0

退房java.io.Console - 您可以通過readPassword()閱讀無迴應的字符串。它仍然是面向行的,所以在用戶按下回車鍵之前你不會收到任何東西。另一個可能的缺點是可能沒有控制檯 - 取決於應用程序啓動的方式。