Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa noite pessoal,
Estou aprendendo Java agora na faculdade, e no meu exercício esta acontecendo um erro que não estou conseguindo resolve-lo. Alguém poderia me ajudar ?
Irei postar o código, e logo abaixo o erro.
public void concatenaArquivo_e_Memoria() throws FileNotFoundException{
if (registrosForaDeOrdem){
Ordenacao ordena = new Ordenacao(this.memoria);
this.memoria=ordena.ordenar();
}
ArquivoDeTexto empregado1 = new ArquivoDeTexto(localDoArquivo);
this.empregados = new ArquivoDeTexto(localDoArquivo2);
this.empregados.abrirArquivo();
String registroEmpregado = "nao vazio";
String aux[];
int contador = 0;
while (!("".equals(registroEmpregado)) || contador < this.memoria.length){
if(registroEmpregado != null && !("".equals(registroEmpregado))){
aux = registroEmpregado.split(" ");
if(this.memoria[contador].getIndice() <= Integer.parseInt(aux[0])){
gravarEmpregado((Empregado)this.memoria[contador].getRegistro());
if(this.memoria[contador + 1].getIndice() == Integer.parseInt(aux[0])){
//this.empregados.leRegistro();
empregado1.leRegistro();
}
}
else {
//this.empregados.gravarEmpregado(registroEmpregado);
empregado1.gravarEmpregado(registroEmpregado);
registroEmpregado = empregado1.leRegistro();
//registroEmpregado = empregados.leRegistro();
}
contador++;
}
else
{
}
}
for (int i = 0; i < this.tamanho - 1; i++)
gravarEmpregado((Empregado)this.memoria[i].getRegistro());
encerrarGravacao();
}Exception in thread "main" java.lang.NumberFormatException: For input string: "nao"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:449)
at java.lang.Integer.parseInt(Integer.java:499)
at br.pucminas.lc3.JOAOOTAVIO.dominio.Controladora.concatenaArquivo_e_Memoria(Controladora.java:104)
at br.pucminas.lc3.JOAOOTAVIO.apresentacao.TelaDeRegistroDeEmpregado.insereDadosEmArquivoExistente(TelaDeRegistroDeEmpregado.java:88)
at br.pucminas.lc3.JOAOOTAVIO.apresentacao.TelaDeRegistroDeEmpregado.processamentoDaFolha(TelaDeRegistroDeEmpregado.java:83)
at br.pucminas.lc3.JOAOOTAVIO.principal.TESTE.main(TESTE.java:16)
Agradeço desde já,
João Otávio
Cara pelo o que eu vi o erro está aqui: if(this.memoria[contador].getIndice() <= Integer.parseInt(aux[0])), pois você está tentando converter uma String em inteiro. Se fosse "não1" ou que pelo menos tivesse um número na String daria certo(pelo menos na minha experiência). Acho que você estaria procurando por um length() ou talvez um size().