Ir para o conteúdo
jotapeeh

Ler ficheiro txt, separar os campos e guardar num objecto

Mensagens Recomendadas

jotapeeh

boas pessoal

tenho um ficheiro txt onde contém um lista de dados e posso mostrar alguns:

1110623;MARIO MAMUEL NETO NEVES;03/02/1993;228070592;mariomanuel@esi.pt

1110626;PATRICIA PINHO PINTO;09/08/1984;915809458;patriciapinho@esi.pt

1100427;MADALENA MANUELA PATO PATRAO;11/01/1992;917912146;madalenamanuela@esi.pt

1100417;ANABELA ANDREIA ANA ALBUQUERQUE ALEIXO;28/06/1991;228045658;anabelaandreia@esi.pt

1110619;PAULA PAIVA PATO;03/03/1989;219286359;paulapaiva@esi.pt

criei um metodo void chamado lerAlunos() com seguinte codigo:

try { 
FileReader readerAlunos = new FileReader(docAlunos);
BufferedReader lerReader = new BufferedReader(readerAlunos);
String linha = lerReader.readLine();

while (linha != null) {
String[]campos = linha.split(";");
for (int i = 0; i < campos.length; i++) {
System.out.println(campos[i]);
}
linha = lerReader.readLine();
}
readerAlunos.close();
} catch (IOException e) {
System.out.println("erro");
}
System.out.println();
}

como devem ter visto tenho uma linha que demilita os campos onde sao separados pelo metodo split e testei. A situacao que gostaria fazer seguinte é criar um Objecto da Classe Aluno em que cada dado vai para um atributo especifico e depois possa chama lo para imprimir na consola, a classe Alunos contem os atributos numero, nome, data_de_nascimento(dd/mm/aaaa), contacto_telefonico , correio_eletronico.

Agradeco[/i]

Editado por brunoais
tag code + geshi

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
HappyHippyHippo

onde está exactamente a tua dúvida ?

é porque já fizeste o mais complicado : ler o ficheiro (um csv normal) e separar os dados. agora é só enfiar num objecto, e guardar-lo numa lista qualquer ...


IRC : sim, é algo que ainda existe >> #p@p

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Psikoi

Olá! meu primeiro post aqui no forum

1110623;MARIO MAMUEL NETO NEVES;03/02/1993;228070592;mariomanuel@esi.pt

^ para esta linha, assumindo que os atributos sao, nome, data de nascimento e email por exemplo, poderias fazer algo como:

while (linha != null) {
String[]campos = linha.split(";");
Aluno MarioMiguel = new Aluno(campos[1] , campos[2], campos[4]);
}

claro que poderia haver um erro de Array Out of bounds se por alguma razao mas espero ter ajudado nao sei :o

Editado por brunoais
tag code + geshi

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.