簡體   English   中英

Java中的命令行界面

[英]Command-line interface in Java

我想創建一個跨平台的解決方案,以提供對Java中Process的輸入,錯誤和輸出流的訪問。

基本上,我要創建的是一個文本區域,用於顯示流程的輸出和錯誤流,並允許您向輸入流提供數據。 換句話說,當您運行應用程序時,Eclipse已經提供了其控制台所提供的功能。

現在,基本的實現很容易,我只需將所有按鍵發送到輸入流即可。 但是,當然,我在粘貼,退格鍵和箭頭鍵,處理ctrl-C等方面遇到麻煩。

似乎我應該等待,然后再將數據發送到流程的輸入流。 但是等什么呢? 我應該在每個返回鍵處發送所有輸入(和粘貼)的文本嗎? 還是隔一段時間? ctrl-Cctrl-X等等。 我是否將箭頭鍵移動發送到輸入流?

最簡單,最人性化的解決方案是使用“發送”按鈕,該按鈕發送文本區域的全部內容並清除它。 考慮一下即時通訊應用或SO評論編輯器。

您不應該等待任何事情,只需發送-而是發送一個單獨的線程,而不是您的GUI事件線程,因此后者不會被阻塞。

要處理特殊字符,請查看在文本控制台中輸入這些符號后會得到什么。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM