Validação LOGIN entre JFrames (ficheiros)

Tenho um trabalho para apresentar mas não estou conseguindo validar o login que está no ficheiro Accounts.dat

JFrame Form -> register.java

private void pCreateMouseClicked(java.awt.event.MouseEvent evt) {                                     
        String user=pUser.getText();
        String pass=pPwd.getText();
        ArrayList<String> utilizadores = new ArrayList<String>();
        ArrayList<String> senhas = new ArrayList<String>();
        if(user.equals("") || user.equals("Username") || pass.equals("") || pass.equals("Password")){
            JOptionPane.showMessageDialog(this, "Forneça um cadastro correto!");
        } else {
            //JOptionPane.showMessageDialog(this, "Conta do utilizador criada!");
            File contas = new File("Accounts.dat");
            utilizadores.add(user);
            senhas.add(pass);
            
            try{
            DataOutputStream out = new DataOutputStream(new BufferedOutputStream(new FileOutputStream(contas, true)));
            if(!contas.exists())
                contas.createNewFile();
            for(int i=0;i<utilizadores.size();i++){
            out.writeUTF(utilizadores.get(i));
            out.writeUTF(senhas.get(i));
            }
            out.close();
            JOptionPane.showMessageDialog(this, "Conta de utilizador criada!");
        } catch (Exception e){
            JOptionPane.showMessageDialog(this, "Impossivel escrever no ficheiro"); //impossivel salvar
        }
        }
    }                                    

JFrame Form -> login.java

private void pLogarMouseClicked(java.awt.event.MouseEvent evt) {                                    
        String userP=pUser.getText();
        String passP=pPwd.getText();
    
        if(userP == "" || passP == "") {
            JOptionPane.showMessageDialog(this, "Não deixe os campos em branco!");
        } else {
        
        File contas = new File("Accounts.dat");
        
        try{
            DataInputStream in = new DataInputStream(new BufferedInputStream(new FileInputStream(contas)));
            boolean eof=false;
            
            while(!eof){
                try{
                    String user = in.readUTF();
                    String pass = in.readUTF();
       
                    if(userP.equals(user) && passP.equals(pass)){
                    menu menu=new menu();
                     menu.setVisible(true);
                     this.dispose();
                     eof=true;
                     a=1;
                    } else {
                        
                    }
                    if(eof=true && a==0)
                        JOptionPane.showMessageDialog(this, "Login Incorreto!");
                        
                }
                
                catch (Exception e){
                    eof=true;
                    in.close();
                }
            }
        }
        catch (Exception e){
            JOptionPane.showMessageDialog(this, "Nenhum utilizador encontrado!\n         Crie uma conta!");
        }
        }
    }                                   

Eu queria que no login ele le se varios logins dentro do ficheiro e nao só 1