Program Arquivos e Fluxos

6 respostas
M

Olá, eu tenho que fazer este programinha descrito abaixo, porém, não estou conseguindo entender como que poederei realizar a serialização de quato arquivos de texto somete num arquivo serializado.
E também, outra dúvida é eu deverei ler direto dos arquivos ou dos arquivos serializados?

O programinha a ser feito e o seguinte:

Escreva um programa Java que leia os quatro arquivos(mateus.txt, marcos.txt, lucas.txt e joao.txt) e utilizando-se da serialização de objetos grave todas as informações neles contidos em um arquivo serializado, chamado exportacao.ser .

O programa deve:

Ao iniciar perguntar se deseja importar os arquivos .txts para o arquivo .ser ou se deseja ler o conteúdo até então importado. Se o usuário desejar importar e já existir o arquivo ?exportacao.ser? o mesmo deverá ser excluído antes que um novo arquivo seja gerado.

Caso o usuário deseje ler o conteúdo serializado o programa deverá perguntar qual livro e capítulo devem ser mostrados e só após o fornecimento dessas respostas o conteúdo (textos) deve ser mostrado.

Deve conter a seguinte classe:

public class Importacao {

private String nomeLivro;

private int capitulo;

private int versículo;

private String texto;


}

Gostaria de saber se alguem teria como ’ dar uma luz ', principalmente quanto a parte dos arquivos serializados…

Valew

6 Respostas

ViniGodoy

A primeira pergunta é… você sabe qual é o formato dos arquivos de texto? Ele é bem definido?
O primeiro passo certamente será dividir o seu arquivo e gerar objetos do tipo Importacao.

Depois, para gerar o arquivo serializado, você simplesmente usa um DataOutputStream para gravar campo-a-campo num novo arquivo.

M

ViniGodoy:
A primeira pergunta é… você sabe qual é o formato dos arquivos de texto? Ele é bem definido?
O primeiro passo certamente será dividir o seu arquivo e gerar objetos do tipo Importacao.

Depois, para gerar o arquivo serializado, você simplesmente usa um DataOutputStream para gravar campo-a-campo num novo arquivo.

Eles estão no formato .txt, sendo que cada arquivo possui em cada linha O numero do capitulo mais . mais o numero do versiculo e o texto em si.

Ex.

1.1 blablabla
1.2 blebleble

O principal problema meu é conseguir gerar o arquivo serializado e depois reutiliza-lo, e também a minha duvida é de qual arquivo pegar os textos, depois ,que o usuario passar as informações?

Obrigado

ViniGodoy

O professor não forneceu os arquivos?

Você pode ler o nome do arquivo do parâmetro args[0] do main:

public static void main(String[] args) { String fileName = args[0]; //Trabalha com arquivo aqui. }

Aí é só iniciar a aplicação com:
java Importacao matheus.txt

Dá uma olhada nas classes DataInputStream e DataOutputStream. É nelas que está a chave de como gerar e ler o arquivo serializado.
Há mais informações aqui:
http://java.sun.com/docs/books/tutorial/essential/io/streams.html

M

ViniGodoy:
O professor não forneceu os arquivos?

Você pode ler o nome do arquivo do parâmetro args[0] do main:

public static void main(String[] args) { String fileName = args[0]; //Trabalha com arquivo aqui. }

Aí é só iniciar a aplicação com:
java Importacao matheus.txt

Dá uma olhada nas classes DataInputStream e DataOutputStream. É nelas que está a chave de como gerar e ler o arquivo serializado.
Há mais informações aqui:
http://java.sun.com/docs/books/tutorial/essential/io/streams.html

Forneceu sim, mais ficou muito vago pra mim, nao consegui entender bem como funciona os arquivos serializados…
Entendi, como abrir arquivos, edita-los, exclui-los…
Soh ficou mais vago esta parte de abrir arquivos de fluxo, perguntar se o usuario deseja importar e tals, nao sei o que importar, onde devo pesquisar o conteudo dos arquivos, como, por exemplo, vou procurar o texto do capitulo que o usuario desejar nos arquivos que ele me passou ou no serializado?

Valew, vou dar uma verificada nesse conteudo.

ViniGodoy

Carregue um dos arquivos em classes. Monte uma lista com essas classes. E trabalhe na memória.
Aí, tanto faz de que arquivo o usuário fez a leitura inicial.

M

ViniGodoy:
Carregue um dos arquivos em classes. Monte uma lista com essas classes. E trabalhe na memória.
Aí, tanto faz de que arquivo o usuário fez a leitura inicial.

Eu ainda nao consigo ter essa visao tao abstrata do ‘negocio’… :cry:

Sera que nao teria como voce repassar uma interface?

Valew por inquanto! :roll:

Criado 30 de agosto de 2008
Ultima resposta 31 de ago. de 2008
Respostas 6
Participantes 2