位置:首頁 > Java技術 > Java.io包 > java.io.Console.readPassword(String fmt, Object args)方法實例

java.io.Console.readPassword(String fmt, Object args)方法實例

java.io.Console.readPassword(String fmt, Object... args) 方法提供了一個格式化提示,然後從控製台禁用回顯讀取密碼。

聲明

以下是聲明java.io.Console.readPassword(String fmt, Object... args)方法:

public char[] readPassword(String fmt, Object... args)

參數

  • fmt -- 在格式字符串的語法格式字符串所描述的提示文字。

  • args -- 格式說明符在格式字符串中的參數引用。

返回值

此方法返回一個字符數組,包含從控製台讀取密碼,不包括行終止符,或者如果流的末尾已到達返回null。

異常

  • IllegalFormatException -- 如果格式字符串包含非法語法,格式說明符與給定的參數,給出的格式字符串參數不足,或其他非法條件是不相容的。

  • IOError -- 如果發生I/O錯誤。

例子

下麵的示例演示java.io.Console.readPassword(String fmt, Object... args)方法的用法。

package com.yiibai;

import java.io.Console;

public class ConsoleDemo {
   public static void main(String[] args) {
      
      Console cnsl = null;
      String alpha = null;
      String fmt = "%2$5s %3$10s%n";
      
      try{
         // creates a console object
         cnsl = System.console();

         // if console is not null
         if (cnsl != null) {
            
            // read line from the user input
            alpha = cnsl.readLine(fmt,"Your","Name: ");
            
            // prints
            System.out.println("Name is: " + alpha);
            
            // read password into the char array
            char[] pwd = cnsl.readPassword(fmt,"Enter","Password: ");
            
            // prints
            System.out.println("Password is: "+pwd);
         }      
      }catch(Exception ex){
         
         // if any error occurs
         ex.printStackTrace();      
      }
   }
}

讓我們編譯和運行上麵的程序,這將產生以下結果:

Your Name: Master Programmer
Name is: Master Programmer
Enter Password: 
Password is: Good Morning