2013-12-16 84 views
0

我需要一些幫助,這代碼我設法找到在互聯網上,這裏是代碼:代碼依賴於控制檯

import java.util.Scanner; 

class login { 
    public static void main(String args[]){ 
     Scanner luci = new Scanner(System.in); 
     String idInput; 
     System.out.println("Username: "); 
     idInput = luci.nextLine(); 
     String passwordInput; 
     System.out.print("Password: "); 
     passwordInput = luci.nextLine(); 

     if(passwordInput.equals("PASSWORD_GOES_HERE") && (idInput.equals("USERNAME_GOES_HERE"))){ 
      System.out.println("Authentification complete!"); 
     } else { 
      System.out.println("Wrong ID or Password!"); 
     } 
    } 
} 

當我運行這段代碼的Netbeans它完美,但有一個問題,它依賴於控制檯,您需要在控制檯中爲其提供登錄信息。是否有任何方法可以使此代碼在Netbeans之外工作?

+0

究竟什麼是你想要做後登錄成功?你想從命令行或其他東西運行它嗎? –

+0

'有什麼辦法可以讓這段代碼在Netbeans之外工作嗎?'這段代碼也適用於Eclipse。畢竟,你正在從'System.in'讀取輸入,這不是Netbeans特有的。 – PakkuDon

+2

這是一個使用控制檯作爲輸出的基本程序,可以選擇幾種選擇,1.將輸出重定向到txt(就像上面的註釋一樣),2.可以使用命令提示符作爲編譯器,3.可以附加jtextfield到你的程序中,4.你可以使用joptionpane。 –

回答

1

相反,它打印到控制檯的,你可以把結果保存在一個字符串變量,並將其寫入文件,如下圖所示:

String s; 

    if (passwordInput.equals("PASSWORD_GOES_HERE") 
      && (idInput.equals("USERNAME_GOES_HERE"))) { 

     s="Authentification complete!"; 

    } else { 
     s="Wrong ID or Password!"; 

    } 

    try { 
     JFileChooser chooser = new JFileChooser("Select file name"); 
     int option = chooser.showSaveDialog(foo); 
     if (option == JFileChooser.APPROVE_OPTION) { 
      new PrintStream(new FileOutputStream(chooser.getSelectedFile().getCanonicalPath())).print(s);    
     } 

    } catch (Exception e) { 
     e.printStackTrace(); 
    }