Problema em converter String lidos de um arquivo txt para numeros
3 respostas
M
macgyver
Pessoal meu problema é o seguinte, tenho dados numeros que forma armazenados em um arquivo texto, cada linha possui quadro informações, então estou usando StringTokenizer para separa-los, depois preciso converte-los em numeros, e quando executo o programa está gerando uma exceção, que esta a baixo:
publicstaticvoidleArquivo(){Filearquivo=newFile("gl3d.txt");FileInputStreamfileInputStream;InputStreamReaderinputStreamReader;LineNumberReaderlineNumberReader;Stringlinha;/* ABRIR ARQUIVO */try{fileInputStream=newFileInputStream(arquivo);inputStreamReader=newInputStreamReader(fileInputStream);lineNumberReader=newLineNumberReader(inputStreamReader);/* LEITURA LINHA A LINHA DO ARQUIVO */while(lineNumberReader.ready()){linha=lineNumberReader.readLine();/* IMPRIME LINHA */StringstringCampo1=linha.substring(0,1);StringstringCampo2=linha.substring(3,6);intintCampo2=Integer.parseInt(stringCampo2);System.out.println("campo1 = "+stringCampo1);System.out.println("campo2 = "+intCampo2);}}catch(FileNotFoundExceptionfileNotFoundException){System.out.println(fileNotFoundException);}catch(IOExceptionioException){System.out.println(ioException);}}publicstaticvoidmain(Stringargs[]){CapturaDadoscapturadados=newCapturaDados();capturadados.leArquivo();}
}
Estou usando java 1.3.1, devido problemas de implementação
p5f8
tai como ficou...
importjava.io.File;importjava.io.FileInputStream;importjava.io.FileNotFoundException;importjava.io.IOException;importjava.io.InputStreamReader;importjava.io.LineNumberReader;importjava.util.StringTokenizer;publicclassCapturaDados{publicvoidleArquivo(){Filearquivo=newFile("gl3d.txt");FileInputStreamfileInputStream;InputStreamReaderinputStreamReader;LineNumberReaderlineNumberReader;Stringlinha;/* ABRIR ARQUIVO */try{fileInputStream=newFileInputStream(arquivo);inputStreamReader=newInputStreamReader(fileInputStream);lineNumberReader=newLineNumberReader(inputStreamReader);/* LEITURA LINHA A LINHA DO ARQUIVO */while(lineNumberReader.ready()){linha=lineNumberReader.readLine();System.out.println(linha);/* IMPRIME LINHA */StringTokenizerst=newStringTokenizer(linha,";");while(st.hasMoreElements()){Stringcampo1=st.nextToken();Stringcampo2=st.nextToken();Stringcampo3=st.nextToken();Stringcampo4=st.nextToken();Stringcampo5=st.nextToken();intintCampo1=Integer.parseInt(campo1);doubledoubleCampo2=0.0d;try{doubleCampo2=Double.parseDouble(campo2);}catch(Exceptione){doubleCampo2=0.0f;}doubledoubleCampo3=0.0d;try{doubleCampo3=Double.parseDouble(campo3);}catch(Exceptione){doubleCampo3=0.0f;}doubledoubleCampo4=0.0d;try{doubleCampo4=Double.parseDouble(campo4);}catch(Exceptione){doubleCampo4=0.0f;}doubledoubleCampo5=0.0d;try{doubleCampo5=Double.parseDouble(campo5);}catch(Exceptione){doubleCampo5=0.0d;}System.out.println("campo1 ="+intCampo1);System.out.println("campo2 ="+doubleCampo2);System.out.println("campo3 ="+doubleCampo3);System.out.println("campo4 ="+doubleCampo4);System.out.println("campo5 ="+doubleCampo5);}}lineNumberReader.close();}catch(FileNotFoundExceptionfileNotFoundException){fileNotFoundException.printStackTrace();}catch(IOExceptionioException){ioException.printStackTrace();}}publicstaticvoidmain(Stringargs[]){CapturaDadoscapturadados=newCapturaDados();capturadados.leArquivo();}}