Avatar billede rajs Nybegynder
21. januar 2003 - 05:01 Der er 2 løsninger

Læse fil med kommasepererede tal

Heysa

Hvordan læser jeg en text fil (eks. indhold ses herunder), og får numrene ud enkeltvis - så jeg evt. kan tilføje disse til et 2x2 array.

0,0,0,0,1,1,2,0|0,0,0,2,1,1,2,0|0,0,0,0,0,0,0,1|1,1,2,0,2,0,0,1|

ovenstående gentages en gang mere - så man får
x|x|x|x|x|x|x|x

hvor x er en tal sekvens ala dem højere oppe..

Hvordan får jeg de tal ud enkeltvis?
Avatar billede disky Nybegynder
21. januar 2003 - 07:51 #1
Læs en linie ind fra din fil og brug en StringTokenizer, her er et eksempel


// line variablen indeholder den linie der har kommasepareret indhold.
StringTokenizer st = new StringTokenizer(line,",|");
int count x=0;
while (st.hasMoreTokens())

  x++;
  System.out.println(st.nextToken());
  if (x%8)
  {
    System.out.println(""); //indsæt linieskift efter hver 8'nd linie
    x=0;
  }
}
Avatar billede arne_v Ekspert
21. januar 2003 - 08:07 #2
package test;

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.StringTokenizer;

public class ReadCSV {
    public static void main(String[] args) {
        try {
            BufferedReader r = new BufferedReader(new FileReader("C:/test.csv"));
            String line;
            while((line = r.readLine()) != null) {
                System.out.println("line=" + line);
                StringTokenizer st = new StringTokenizer(line, ",|");
                int num;
                System.out.print("numbers=");
                while(st.hasMoreTokens()) {
                    num = Integer.parseInt(st.nextToken());
                    System.out.print(" " + num);
                }
                System.out.println();
            }
        } catch (FileNotFoundException e) {
        } catch (IOException e) {
        }
    }
}
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester