我正在用Java編寫控制檯應用程序。它類似於聊天客戶端:輸入和輸出是異步創建的。問題是,如果在用戶處於打字過程中進行某些輸出時,線條會混淆在屏幕上。在Java控制檯應用程序中保持輸入/輸出分離
我正在尋找一個解決方案,它允許我有一個輸出區域與輸出區域分開。此刻我正在使用一個額外的線程輪詢System.in上的BufferedReader。
該程序需要在Linux服務器上運行,並通過ssh會話進行訪問。因此,只有在這種環境下才能使用的提示都很好。
是否有任何高級庫可以做到這一點?或者是否有使用終端/ ANSI代碼的巧妙技巧? ANSI代碼(保存遊標)和r(恢復遊標)可能會有所幫助,但我如何知道在哪裏跳轉以執行輸出,以及如何處理滾動?
雖然我喜歡圖書館由於懷舊。它有它的耀斑。但它是一個完整的小部件庫。您可以使用任何小部件庫(例如AWT,SWT)併爲此設置兩個文本區域。如果沒有關於如何分離進出的簡短片段,我沒有看到使用jcurses的要點 – benez 2015-09-04 10:08:43
@kewlbfy OP需要一個在終端中工作的解決方案。你提到的小部件庫不適用於這種情況 – 2015-09-05 16:41:22