04. december 2003 - 13:22Der er
7 kommentarer og 1 løsning
objekt fra ¨tekst fil
Jeg vil gerne have oprettet et objekt i en arrayList ud fra tekst i en tekst fil. Har prøvet med en string tokenizer: arrayList.add(new (st.nextToken())); men der vil den godt have eklæret en type...
Det kan godt være det slet ikke er sådan er der nogen der lige har en idé?
ArrayList al = new ArrayList(); while ((line = in.readLine()) !=null) { StringTokenizer st = new StringTokenizer(line, delim); al.add(st.nextToken()); }
eller:
ArrayList al = new ArrayList(); while ((line = in.readLine()) !=null) { StringTokenizer st = new StringTokenizer(line, delim); al.add(new X(st.nextToken())); }
ved den øverste får jeg jo bare oprettet et string objekt i arrayListen, hvordan får jeg oprettet præcist det der står i txt filen, f.eks. objektNavn(attribut)?
Med hensyn til den nederste hvad skal X repræsentere?
Problembeskrivelsen er ikke helt korrekt formuleret.
Det jeg gerne vil er følgende: Jeg har en tekstfil der er kommasepererat ex. A, B, C Jeg har klasser af typen A, B og C
Jeg vil slippe for at skulle skrive Arraylist a = new ArrayList(); a.add(new A()); a.add(new B()); a.add(new C()); eller en masse if() sætninger, og i stedet læse tekstfilen ind dele den ved kommaer vha StringTokenizer og bruge A, B og C som typen på de objekter jeg skal oprette, sådan at:
StringTokenizer st = new StringTokenizer("A, B, C", ","); while(st.moreTokensLeft()) // pseudo kode... { a.add(new st.nextToken()()); // som opretter et objekt af typen svarende til det indhold som nextToken() returnerer i form af en String, dvs returnerer st.nextToken() en String der indeholder A, skal der laves et objekt af typen A }
Det er i en større sammenhæng som det skal bruges senere, hvorfor det er smart hvis det kan gøres på denne måde.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.