Gå til innhold

Anbefalte innlegg

Dette skal eg lesa frå ein fil

 

Svein Borgen; Skibakken 12; true; 3;

Eirik Krates; Himmeldalen 29; false; 0;

 

Det det første er namn(string), andre adresse(string), tredje sperrakonto(boolean) og fjerde anmerkninger(int)

 

Eg prøver å lesa eksempler frå boka mi, og ellers på google, men det er så mange varierte svar og dårlege eksempler som gjer detta skikkeleg vondt å forstå.

 

Kva med eventuelt ein filstruktur basert på xml istadenfor?

Lenke til kommentar
Videoannonse
Annonse

Xml-format er aa anbefale. Strukturen er veldefinert og det finnes gode java-biblioteker som kan parse xml-filer og konvertere dem til DOM-objekter, slik at det er "enkelt" aa hente ut informasjonen.

 

JDOM er et eksempel paa et godt java-bibliotek som kan lese og skrive til xml. Eksempel paa bruk:

 

http://www.oracle.com/technology/oramag/or...ep/o52jdom.html

 

En innfoering i DOM-objekter:

 

DOM Tutorial

Endret av Patton
Lenke til kommentar
Dette skal eg lesa frå ein fil

 

Svein Borgen; Skibakken 12; true; 3;

Eirik Krates; Himmeldalen 29; false; 0;

 

Det det første er namn(string), andre adresse(string), tredje sperrakonto(boolean) og fjerde anmerkninger(int)

 

Eg prøver å lesa eksempler frå boka mi, og ellers på google, men det er så mange varierte svar og dårlege eksempler som gjer detta skikkeleg vondt å forstå.

 

Kva med eventuelt ein filstruktur basert på xml istadenfor?

 

Det enkleste er nok å bruke en XML fil. Jeg har strukturert om til en XML fil og laget en enkel XML parser i Java... ReadXML.java.

 

Fikk ikke fargekoding og indent i XML eller Java her, så har lagt inn koden i Devsiden Pastebin:

 

http://www.devsiden.info/index.jsp?side=pastebin&pasteid=4

Lenke til kommentar

Svein Borgen; Skibakken 12; true; 3;

Eirik Krates; Himmeldalen 29; false; 0;

Hvis du ikke ønsker å begynne med xml, som nok er å anbefale, så er følgende den enkeleste:

 

while (filleser.harFlereLinjer()){

StringTokenizer st = new StringTokenizer(filleser.nesteLinje(), ";");

String navn = st.nextToken();

String adresse = st.nextToken();

Boolead status = new Boolean(st.nextToken());

int alder = st.nextToken();

Person p = new Person(navn, adresse, status, alder);

arraylist.add(p);

}

Lenke til kommentar

Svein Borgen; Skibakken 12; true; 3;

Eirik Krates; Himmeldalen 29; false; 0;

Hvis du ikke ønsker å begynne med xml, som nok er å anbefale, så er følgende den enkeleste:

 

while (filleser.harFlereLinjer()){

StringTokenizer st = new StringTokenizer(filleser.nesteLinje(), ";");

String navn = st.nextToken();

String adresse = st.nextToken();

Boolead status = new Boolean(st.nextToken());

int alder = st.nextToken();

Person p = new Person(navn, adresse, status, alder);

arraylist.add(p);

}

Ville nok ha lagt til noen trim() der for å være på den sikre siden og få fjernet litt whitespace...

 

Boolean status = new Boolean(st.nextToken().trim());

Endret av boemane
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...