Java 對於文字終端機的支援是非常貧乏, 例如 : 密碼輸入螢幕上只出現 '*', 這樣的功能, JDK 並沒有支援, 如需這樣的功能, 你必須使用第三方套件來完成.
在此為你介紹 Jline 這套件, 如何完成 密碼輸入螢幕上只會出現 '*',
實作步驟如下 :
1. 下載 JLine 套件
http://sourceforge.net/projects/jline/files/
2. 撰寫程式
import jline.*;
import java.io.*;
public class PasswordReader {
public static void main(String[] args) throws IOException {
ConsoleReader reader = new ConsoleReader();
String line = null;
do {
line = reader.readLine("enter password> ", '*');
System.out.println("Got password: " + line);
} while(line != null && line.length() > 0);
}
}
3.編譯程式
> javac -cp jline-1.0.jar PasswordReader
4. 執行程式
> java -cp .;jline-1.0.jar PasswordReader
enter password> **********
Got password: qqqqqqqqqq
enter password>
Got password:
JLine 官方網址 : http://jline.sourceforge.net/
2011年7月13日 星期三
訂閱:
張貼留言 (Atom)
3 Response to Java 文字終端機 - 密碼輸入 (會出現 *)
程式編譯沒有問題
但是執行時會出現執行錯誤
http://www.hotimg.com/image/aJ5NyGt
錯誤訊息的圖片
抱歉執行命令打錯, 正確命令如下 :
java -cp .;jline-1.0.jar PasswordReader
張貼留言