簡體   English   中英

Java登錄驗證不起作用?

[英]Java login verification does not work?

我已經在代碼中聲明了所有相關的字符串變量。 我的問題是我的登錄驗證。 單擊按鈕時,我試圖驗證文本文件中是否存在字符串。 其布局為“用戶名:john25,密碼:john25”。 誰能告訴我我到底要去哪里

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
    // TODO add your handling code here:]
    if(evt.getSource()==jButton1){
        boolean found = false;
        username = ("");
        password = ("");
        filepath =("doctorFiles.txt");

        username = jTextField1.getText();
        password = jPasswordField1.getText();

        try{
            x = new Scanner(new File(filepath));
            x.useDelimiter("[,\n]");

            while(x.hasNext() && !found ) {
                username = x.next();
                password = x.next();

                if(username.trim().equals(username.trim()) && password.trim().equals(password.trim()))
                {
                    found = true;
                   if(found==true){
                     welcomePage goback = new welcomePage();
                     goback.setVisible(true);
                     dispose(); 
                     }
                }
                x.close();
                System.out.println(found);

            }


        }

        catch(Exception e)
        {
            System.out.println("Error is "+ e);
        }
    }
}

您為什么在這里步進自己的變量:

username = jTextField1.getText();
password = jPasswordField1.getText();


username = x.next();
password = x.next();

這沒有任何意義,如果您

 if(username.trim().equals(username.trim()) && password.trim().equals(password.trim()))

您正在比較同一個變量,它將始終為真。 嘗試創建新變量

String usernameFromTxt = x.next();
String passwordFromTxt = x.next();

if(usernameFromTxt .trim().equals(username.trim()) && usernameFromTxt .trim().equals(password.trim()))

暫無
暫無

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

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