Ciao a tutti, ho un problema da risolvere, devo leggere un file .txt così organizzato:
; Nome
;; 0
;;; caso a
;;; caso b
;;; caso c
;;; caso d
; Nome2
;; 1
;;; caso a
;;; caso b
etc...
In pratica vorrei creare un array di oggetti in cui ciascun oggetto ha tre campi:
String Nome
Int Numero
String [] Casi
i " ; " li ho messi per rendere possibile l'identificazione del tipo di riga ( ovvero a quale campo (Nome,Numero o Casi) appartiene).
prima avevo un file organizzato così
nome:0
nome2:1
nome3:0
e operavo nel seguente modo:
codice:public class Utente{ private String nome; private int scelta; public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public int getScelta() { return scelta; } public void setScelta(int scelta) { this.scelta = scelta; } }
e nel main:
codice:List<Utente> list =newArrayList<Utente>(); File file =newFile("file.txt"); BufferedReader reader =null; try { reader =newBufferedReader(newFileReader(file)); String line; while((line = reader.readLine())!=null) { String[] myString = line.split(":"); Utente utente =newUtente(); utente.setNome(myString[0]); utente.setScelta(Integer.parseInt(myString[1])); list.add(utente); } } catch(IOException e) { e.printStackTrace(); } finally { if(reader !=null) { try { reader.close(); } catch(IOException e) { e.printStackTrace(); } } }
ma ora, per problemi di spazio (dato che i "casi" possono essere molti) non posso scriverli sulla stessa riga ed effettuare un'ulteriore separazione con ad es. "::" ma ho bisogno di scriverli nel modo indicato all'inizio.Come devo modificare il codice? Grazie in anticipo




