caro andreh,
naum entendi muito bem o q vc queria, mas acho q seja isto:
**********
import java.io.*;
public class DareDevil {
public static void main(String args[]) {
// crio 3 objetos que irao ser gravados
TFuncionario func1 = new TFuncionario("Joao", 1, 500.17);
TFuncionario func2 = new TFuncionario("Paulo", 2, 328.81);
TFuncionario func3 = new TFuncionario("Maria", 3, 700.99);
// um arquivo
File f = new File("teste.dat");
try {
// um novo obj p/ gravacao des dados
FileOutputStream outFile = new FileOutputStream(f);
// um novo obj p/ gravacao de objetos
ObjectOutputStream objOutStream = new ObjectOutputStream(outFile);
// gravo os dados
objOutStream.writeObject(func1);
objOutStream.writeObject(func2);
objOutStream.writeObject(func3);
// fecho os objetos de saida
objOutStream.close();
outFile.close();
////////////////////////////////////////////
// recuperacao dos dados
////////////////////////////////////////////
// tres objetos vazios que serao preenchidos pelos dados do arquivo
TFuncionario funcLido[] = new TFuncionario[3];
// um novo objeto p/ leitura de dados
FileInputStream inputFile = new FileInputStream(f);
// um novo objeto p/ leitura de objetos de um arquivo
ObjectInputStream objInputStream = new
ObjectInputStream(inputFile);
// aqui eh necessario um "cast" porque a funcao readObject
// retorna um objeto do tipo "Object", entao vc forca
// uma conversao p/ o tipo de seu objeto
for (int i = 0; i < 3; i++) {
funcLido[i] = (TFuncionario) objInputStream.readObject();
}
// imprimo os resultados
for (int i = 0; i < 3; i++) {
System.out.println("Objeto: " + i);
System.out.println("Nome: " + funcLido[i].Nome);
System.out.println("Codigo: " + funcLido[i].Codigo);
System.out.println("Salario: " + funcLido[i].Salario + "\n");
}
// fecho os objetos de leitura de dados
objInputStream.close();
inputFile.close();
} catch(Exception ex) {
System.out.println(ex.toString());
}
}
}
// AQUI eh esta a classe que vai conter seus dados
// toda classe que ira ser gravada deve implementar a interface
// Serializable. Isso vale p/ qualquer coisa que transforme uma classe
// em um fluxo de dados (ex. CORBA, RMI, JavaBeans, etc.)
class TFuncionario implements Serializable {
public String Nome;
public int Codigo;
public double Salario;
// um contrutor so p/ simplificar a vida
public TFuncionario(String Nome, int Codigo, double Salario) {
this.Nome = Nome;
this.Codigo = Codigo;
this.Salario = Salario;
}
}
**********
espero ter ajudado...
inteh...
DareDevil
-------------------------------
" Conhecimento naum eh
acumulo de informacao.
Eh competencia para agir!!! "
-------------------------------
-----Mensagem original-----
De: Andre Baldinelli <[EMAIL PROTECTED]>
Para: [EMAIL PROTECTED] <[EMAIL PROTECTED]>
Data: Quarta-feira, 11 de Outubro de 2000 13:43
Assunto: [java-list] Gravar dados em arquivo
Olá colegas
Sou novato em Java (e na lista) e precisava de algumas dicas.
Eu precisava, agora, de uma rotina para gravar uma estrutura de dados em
disco, e nao sei como fazer isso.Seria algo como, em C, definir uma
estrutura e grava-la em arquivo.Ja procurei informacoes em diversos sites
mas nao obtive sucesso. Alguem pode mandar um codigo qualquer onde isso seja
implementado ou pelo menos me dar uma ideia das rotinas que tenho que
utilizar?
Agradeco qualquer ajuda!
Andre Luis
------------------------------ LISTA SOUJAVA ----------------------------
http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
para sair da lista: envie email para [EMAIL PROTECTED]
-------------------------------------------------------------------------