2016-08-14 4 views
0

저는 Java를 배우는 고등학생이며 스캐너에서 입력 텍스트를 별표로 자동 변경하는 방법을 알고 싶습니다. 이것은 프로젝트를 위해 만든 간단한 로그인 시스템입니다. 내 코드는 내가 암호를 입력 할 때 자동으로 별표 (*)로 변경할 수 있도록스캐너로 Java에서 비밀번호 마스킹

Scanner scan = new Scanner(System.in); 

    boolean correctLogin = false; 
    String username; 
    String password; 
    String enteredUsername; 
    String enteredPassword; 

    while(correctLogin != true){ 
     System.out.println("Enter Username: "); 
     enteredUsername = scan.nextLine(); 

     System.out.println("Enter Password: "); 
     enteredPassword = scan.nextLine(); 

     if(enteredUsername.equals("username") && enteredPassword.equals("passw00rd")){ 
      System.out.println("You have entered the correct login info"); 
      correctLogin = true; 
      break; 
     } 
     else{ 
      System.out.println("Your login info was incorrect, please try again"); 
     } 
    } 

    System.out.println("You are now logged in, good job!"); 

내가 원하는 것입니다.

+0

을 그들이 콘솔에 암호를 입력하면, 입력 할 때 문자가 콘솔에 나타납니다. 이 점을 통해 어떤 이점이 있는지 확실하지 않습니다. IDE에서 이것을 사용하지 않으려는 경우 ['Console # readPassword'] (https://docs.oracle.com/javase/8/docs/api/java/io/Console.html)로 문의하십시오. # readPassword-java.lang.String-java.lang.Object ...-) –

답변

-2

나는 당신의 질문을 올바르게 받았는지 확실하지 않지만, 아직도 내가 이해 한 것을 설명하려고 노력할 것입니다.

사용자 화면에 ***이 표시되도록하려면 HTML로 작성된 일종의 사용자 인터페이스가 있어야합니다. 나는이 경우에 당신이 일식과 일종의 주된 방법을 통해 당신의 코드를 실행하고 있다고 생각한다. 그렇다면 Vince가 언급 한 것처럼 편지가 콘솔에 나타나기 때문에 **의 이점은 없습니다.

기본 웹 응용 프로그램 자습서를 찾는 것이 좋습니다. 그런 다음 어떻게 작동하는지 더 자세히 알 수 있습니다.

HTH

1

읽기 암호이 함께 시도 :

Console console = System.console(); 
if(console != null){ 
    console.readPassword("Enter Password: "); 
} 
+0

IDE –

+0

에서 콘솔을 사용할 때 예외가 발생합니다. @ 조니 : 시도해 볼 수도 있습니다. – Riad

관련 문제