Galera, estou tentando comparar o texto de uma variável que o usuário digita com o texto de um arquivo, usando o seguinte algoritmo:
String placa = (JOptionPane.showInputDialog(null, "Digite a placa do carro")).toUpperCase();
FileReader arquivo = new FileReader(nomeArq); // associa variável ao arquivo
BufferedReader br = new BufferedReader(arquivo); // abre arquivo para leitura
String verifica_linha; // linha com um registro do arquivo
String[] campos = null; // vetor com os vários campos de cada linha
// lê todas as linhas do arquivo (enquanto não chegar ao fim do arq)
while ((verifica_linha=br.readLine())!=null){
campos=linha.split(":"); //quebra dados do texto separados por ":"
if(placa.equals(campos[0])){
JOptionPane.showConfirmDialog(null, "Confirmar dados:\nPlaca: " + placa + " Cliente: " + campos[1] +
"\nCarro: " + campos[2] + " " + campos[3]);
}
else{
JOptionPane.showMessageDialog(null, "Carro não cadastrado no sistema - placa inválida", "Erro de Cadastro",
JOptionPane.ERROR_MESSAGE);
VerificaCliente();
}
}
O problema é que ele está sempre retornando essa última condição (placa.equals(campos[0]) como falsa. Já debuguei pra ver qual valor cada variável assume e eles são iguais nas duas comparadas. Alguém sabe onde eu errei?
