Manipulação de arquivos via programas em Java

3 respostas
F

[b] Boa tarde .

Estou com um intensa duvida de como e onde obter informações detalhadas de manipulaçao de arquivos em java. Ja consegui em alguns livros e sites, porem estes so falam as operacoes basicas e generalizadas(ler/gravar) nada muito a fundo.

O arquivo que preciso mapear (.TXT) via programa em java contem um universo de caracteres e eu estarei a cada linha somente pegando os valores numericos e os associando ao campo (para fazer um normalização via programa java). Abaixo tem um exemplo de um linha:

“Valor Patrim p/ Acao $”;0,[telefone removido];0,[telefone removido];0,[telefone removido];0,[telefone removido];0,[telefone removido];0,[telefone removido];0,[telefone removido];0,[telefone removido];0,00211874;0,001580181;0,001982261;0,005171668;0

Quem puder me dar um dica de onde posso encontrar programas semelhantes ou material/exemplo de manipulaçao

Agradeço desde ja a ajuda

[/b]

3 Respostas

E

Pelo que entendi você não precisa de nada mais do que:

  1. As operações básicas de ler/gravar (para abrir e recuperar dados do arquivo).
  2. Operações de String, para ser mais especifico sub-String (para utilizar o caractere separador ;).
  3. Operações de casting para transformar a String em números.

Agora se você quiser um trabalho mais consistente, leia também sobre “bufferização” e sobre Análise Léxica.

T

Cara…
Tu nao tens um exemplos simples de manipulação para postar aqui…
Estou querendo também “brincar” um pouco com isso…
Abrass…

V

Não entendi exatamente de que maneira você quer formatar, mas segue um exemplo que lê números de um arquivo texto:

try {
     //leitura do arquivo
     BufferedReader arquivo = new BufferedReader(new FileReader(new File("C:\testando.txt")));

     //lê linha por linha do arquivo
     String str = null;
     do {
         //define str como leitura da linha e se tiver algo irá manupular                     
         if ((str = arquivo.readLine()) != null) {
             //cria um scanner para a string lida
             Scanner scan = new Scanner(str);

             //define que o caracter que irá seperar os números é ";"
             scan.useDelimiter(";");

             //enquanto encontrar um double irá imprimi-lo 
             while (scan.hasNextDouble()) {
                 double d = scan.nextDouble();
                 System.out.println(d);
             }
         }
     } while (str != null);
 } catch (FileNotFoundException ex) {
     System.out.println("Arquivo não encontrado");
 } catch (IOException ex) {
     System.out.println("Erro de leitura");
 }
Usei um arquivo chamado testando.txt com o seguinte conteúdo:
;0,[telefone removido];0,[telefone removido];0,[telefone removido];0,[telefone removido];0,[telefone removido];0,[telefone removido];0,[telefone removido];0,[telefone removido];0,00211874;0,001580181;0,001982261;0,005171668;0;
53;45,7
Criado 23 de agosto de 2006
Ultima resposta 24 de ago. de 2006
Respostas 3
Participantes 4