Ciao a tutti, riporto in questa sezione il mio problema.Devo leggere un file .txt così organizzato:; Nome;; 0/1;;; caso a;;; caso b;;; caso c;;; caso d; Nome2;; 0/1;;; caso a;;; caso betc...In pratica vorrei creare un array di oggetti in cui ciascun oggetto ha tre campi:String NomeInt NumeroString [] 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:0nome2:1nome3:0e operavo nel seguente modo:
codice:
package idxfilestest;
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 list = newArrayList();
File file = new File("file.txt");
BufferedReader reader = null;
try {
reader = new BufferedReader(new FileReader(file));
String line;
while ((line = reader.readLine()) != null) {
String[] myString = line.split(":");
Utente utente = new Utente();
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