Acredito que eu tenha feito a minha pergunta em um tópico no qual já tinha sido solucionado…
Por isso, pergunto agora neste :
Em uma determinada coluna, eu tenho que obter um registro de 8 posições : "novoArq[13].substring(0, 8), porém esta ocorrendo o erro de “java.lang.StringIndexOutOfBoundsException: String index out of range: 8”, isso por que quando fiz o debug, descobri que tem registros que não possui esta quantidade.
o que posso fazer para não pegar registros menores que 8 nesta determinada posição ?
Desculpem a minha insistência, mas é muito importante mesmo…
A questão é que este registro em específico que está ocasionando o erro possui apenas 6 posições e o correto são 8 posições.
Obrigado pela ajuda…
lucas_vieira
Todas as enstrads tem o mesmo tamanho ? Como está o arquivo que vc está lendo (vc está lendo um arquivo ? ) ? Todos os regitros tem realmente 8 posições ?
Se o tamanho dos arquivos possuem variação utilize o metodo lenght() e pegue posição a posição
(não sei se é a melhor solução… não consegui enteder muito bem o pq da diferença do tamnho de um registro para o outr :? )
Continue postando…
Abraço
worldsoft
brunosardao:
Então,
A questão é que este registro em específico que está ocasionando o erro possui apenas 6 posições e o correto são 8 posições.
Obrigado pela ajuda…
brunosardao então como havia falado acima use um método da classe String que se chama lenght(), ficaria +/- assimn:
novoArq[13].substring(0,novoArq[13].lenght()-1);
Mais caso haja metódos maiores que 8 irão ser pego nessa função esse registros maiores, para isso verifique o tamanho do registro sé é menor que 8 e use o método acima, senão use da forma como estava.
lucas_vieira
worldsoft:
brunosardao:
Então,
A questão é que este registro em específico que está ocasionando o erro possui apenas 6 posições e o correto são 8 posições.
Obrigado pela ajuda…
brunosardao então como havia falado acima use um método da classe String que se chama lenght(), ficaria +/- assimn:
novoArq[13].substring(0,novoArq[13].lenght()-1);
Mais caso haja metódos maiores que 8 irão ser pego nessa função esse registros maiores, para isso verifique o tamanho do registro sé é menor que 8 e use o método acima, senão use da forma como estava.
Dessa maneira vai funcionar perfeitamente… mesmo que seus registros não possuam o mesmo tamanho.
Erra isso mesmo que vc queria ?
Abraço
brunosardao
lucas_vieira e worldsoft
Muito obrigado pelas dicas, realmente elas funcionaram…No caso utilizei a primeira passada pelo worldsoft já consegui o controle que precisava.
E realmente era o que eu precisava…
Lucas
No caso, realmente eles possuem 8 posições, isso é padrão, é que no caso, alguem executou um processo eventual e gerou o nome dele com 6 posições, ai quando precisei coletar as informações com 8, tava ocorrendo a mensagem de erro. O correto mesmo é 8 posições.
Muito obrigado pela ajuda de vocês…
Abraços…
lucas_vieira
Opa cara que isso… estamos aqui pra ajudar.
Altere o titulo do tópico para resolvido assim otros tbm podem esclarecer suas duvidas diretamente.
Abraço
brunosardao
Valeu Lucas, pode deixar que vou alterar…
abraços,