30.06.2013 Views

Apostila Java

Apostila Java

Apostila Java

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

}<br />

// .... restante da classe<br />

// IMPORTANTE: membros estáticos não são serializáveis.<br />

Escrevendo objetos serializados em um arquivo - para os exemplos sobre serialização utilizaremos<br />

a classe <strong>Java</strong>.útil.Date, que é serializável.<br />

// O construtor vazio da classe Date assume a data e hora atuais<br />

java.util.Date data = new Date();<br />

File arquivo = new File("data.txt");<br />

FileoutputStream saida = new FileoutputStream(arquivo);<br />

ObjectOutputStream escritor = new ObjectOutputStream(saida);<br />

// O processo de gravação e leitura de dados em arquivos sempre<br />

// deve ser feito prevendo-se o tratamento de exceções<br />

try<br />

{<br />

escritor.write(data);<br />

escritor.close();<br />

}<br />

Catch(IOException erro)<br />

{<br />

erro.printStackTrace();<br />

}<br />

Lendo objetos serializados de um arquivo<br />

java.util.Date data = null;<br />

File arquivo = new File("data.txt");<br />

FileInputStream entrada = new FileInputStream(arquivo);<br />

ObjectInputStream leitor = new ObjectInputStream(entrada);<br />

// O processo de gravação e leitura de dados em arquivos sempre<br />

// deve ser feito prevendo-se o tratamento de exceções<br />

try<br />

{<br />

// O casting sempre deve ser feito, porque o retorno<br />

// de uma leitura via ObjectInputStream é sempre<br />

// um objeto da superclasse Object, que deve ser convertido<br />

// conforme o tipo de dado utilizado<br />

data = (Date)leitor.readObject();<br />

leitor.close();<br />

System.out.println("objeto lido: " + data);<br />

}<br />

Catch(IOException erro)<br />

{<br />

erro.printStackTrace();<br />

}<br />

125

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!