Valor ñ está sendo comparado

6 respostas
H
boolean _return = false;
		
		if (registro.getNomeProprietario() != null && registro.getNomeProprietario().length() > 0) {
			_return = retorno.substring(239, 305).equals(registro.getNomeProprietario());
		}
		_renomear(registro);
		return _return;

Tenho o codigo acima, o retorno é uma String que tem o arquivo que quero verificar.

Só que está dando um valor false, porém o valor está correto.

Alguem sabe me dizer o porque, onde está o erro.

obrigado desde de já pessoal =)

6 Respostas

panthovillas

1 - esta entrando no if ??
experimente trocar o

registro.getNomeProprietario().length() > 0

por

!registro.getNomeProprietario().trim().equals("")

2 - o registro.getNomeProprietario() não esta trazendo espaços em branco ?
experimente passar

retorno.substring(239, 305).equals(registro.getNomeProprietario().trim());
wbdsjunior

para ajudar, escreva os valores no console e poste o resultado.

if (registro.getNomeProprietario() != null && registro.getNomeProprietario().length() > 0) { System.out.println(retorno.substring(239, 305)); System.out.println(registro.getNomeProprietario()); }

ViniGodoy

Não vejo problema nenhum em usar getLength() > 0. A partir do Java 6, fica mais claro usar isEmpty().

Também fica difícil de te ajudar sem saber o que a substring retorna. Acho que a forma mais fácil de corrigir esse problema é usando o depurador. Você sabe usar o debbuger da sua IDE?

edmarr

ViniGodoy:
Não vejo problema nenhum em usar getLength() > 0. A partir do Java 6, fica mais claro usar isEmpty().

Também fica difícil de te ajudar sem saber o que a substring retorna. Acho que a forma mais fácil de corrigir esse problema é usando o depurador. Você sabe usar o debbuger da sua IDE?

Eh bom vc verificar via debbuger pela ide q vc esta uzando como o ViniGodoy disse , insira o System.out.println(registro.getNomeProprietario()); e verifique se o mesmo ira imprimir algo .

O

Não precisa testar se nomeProprietario está vazio porque o equals() já vai tratar isso retornando false. Fora que vai deixar o código mais legível. Aliás, nem precisa testar se está nulo.

H

Vc’s não vão acreditar. O problema já foi resolvido. Apenas adicionei .trim() e tudo resolvido =/

Obrigada a todos!!!

Criado 26 de junho de 2009
Ultima resposta 13 de jul. de 2009
Respostas 6
Participantes 6