Pessoal,
Desculpem, mas essa minha reposta esta errada. Na verdade, voce pode
utilizar os metodos listados, mas apenas em streams (ou arquivos)
gravados da mesma forma (com as classes DataOutputStream ou RandomAccessFile).
Essas classes gravam e leem um formato binario, e nao texto.
Estou anexando um programa que le o arquivo do tipo indicado, e
imprime os resultados lidos na tela. Nesse exemplo eu estou utilizando
java.util.StringTokenizer, mas seria possivel utilizar um
StreamTokenizer com basicamente os mesmos resultados.
Observe que o problema dessa leitura eh obviamente a conversao de
String para int e/ou float, que em Java eh importante capturar os
eventuais erros ocorridos.
Desculpem a confusao....
import java.io.*;
import java.util.*;
public class filetest {
public static void main(String args[]) {
BufferedReader b=null;
try {
b = new BufferedReader(new FileReader("teste.txt"));
} catch (IOException ioe) {
System.out.println("Nao foi possivel ler o arquivo.");
System.exit(1);
}
try {
String d=null;
int i=0;
float f=0;
String line;
while ((line = b.readLine()) != null) {
StringTokenizer st = new StringTokenizer(line);
try {
d = st.nextToken();
f = Float.parseFloat(st.nextToken());
i = Integer.parseInt(st.nextToken());
System.out.println("Data:"+d+" i:"+i+" f:"+f);
} catch (NumberFormatException nfe) {
System.out.println("Numero invalido.");
}
}
} catch (IOException ioe2) {
System.out.println("Erro na leitura do arquivo.");
}
}
}
Arquivo teste.txt
01/11/1999 12.34 123
2/2/2000 7788.4 123456
"Bruno Souza (Sun Microsystems)" wrote:
>
> Sim, voce pode utilizar tanto a classe RandomAccessFile ou a classe
> DataInputStream. Ambas possuem metodos readUTF, readFloat e readInt
> que farao o que voce deseja.
>
> FileInputStream f = new FileInputStream("nomedoarquivo");
> DataInputStream dis = new DataInputStream(f);
>
> String d = dis.readUTF();
> float f = dis.readFloat();
> int i = dis.readInt();
>
> []s,
>
> Bruno.
>
> Jo�o Medeiros wrote:
> >
> > ol� pessoal,
> > estou escrevendo um programa em java e ele precisa ler dados que est�o
> > gravados em arquivos textos da seguinte forma
> >
> > Data valor float valor int
> > 01/11/1999 12.00 1234
> >
> > Em c eu escreveria apenas uma linha de c�digo para ler a segunda linha
> > acima:
> >
> > scanf("%s %f %d\n",data, &valor1, &valor2);
> >
> > onde as vari�veis data, valor1 e valor2 est�o definidas como:
> >
> > char data[11];
> > float valor1;
> > int valor 2;
> >
> > existe alguma coisa equivalente em java?
> >
> > grato por qualquer ajuda.
> >
> > Jo�o Medeiros
> >
> > * Para n�o receber mais e-mails desta lista envie um e-mail para
>[[EMAIL PROTECTED]]
> > e no corpo do email escreva [unsubscribe <seu-email>]
> > Veja as mensagens antigas em http://www.mail-archive.com/javabr%40cits.br/
>
> --
>
> Bruno.
> ______________________________________________________________________
> Bruno Peres Ferreira de Souza Sun Microsystems
> System Engineer - Java Technologist [EMAIL PROTECTED]
> if I fail, if I succeed, at least I live as I believe
> * Para n�o receber mais e-mails desta lista envie um e-mail para
>[[EMAIL PROTECTED]]
> e no corpo do email escreva [unsubscribe <seu-email>]
> Veja as mensagens antigas em http://www.mail-archive.com/javabr%40cits.br/
--
Bruno.
______________________________________________________________________
Bruno Peres Ferreira de Souza Sun Microsystems
System Engineer - Java Technologist [EMAIL PROTECTED]
if I fail, if I succeed, at least I live as I believe
* Para n�o receber mais e-mails desta lista envie um e-mail para
[[EMAIL PROTECTED]]
e no corpo do email escreva [unsubscribe <seu-email>]
Veja as mensagens antigas em http://www.mail-archive.com/javabr%40cits.br/
Re: leitura de =?iso-8859-1?Q?vari=E1veis?= float e int em arquivos textos. (correcao)
Bruno Souza (Sun Microsystems) Mon, 1 Nov 1999 15:32:50 -0800
- leitura de vari?veis float e int em arquivo... Jo�o Medeiros
- Re: leitura de vari?veis float e int e... Bruno Souza (Sun Microsystems)
- Re: leitura de vari?veis float e i... Bruno Souza (Sun Microsystems)
- Re: leitura de vari?veis float... Jo�o Medeiros
- Re: leitura de vari?veis f... Bruno Souza (Sun Microsystems)
- Re: leitura de vari?v... Joao Medeiros de Araujo
