Čítanie súboru CSV do poľa

1. Prehľad

Jednoducho povedané, súbor CSV (Comma Separated Values) obsahuje usporiadané informácie oddelené oddeľovačom čiarky.

V tejto príručke sa pozrieme na rôzne spôsoby, ako načítať súbor CSV do poľa.

2. BufferedReader v java.io

Najskôr prečítame záznamy riadok po riadku pomocou readLine () v BufferedReader. Potom rozdelíme riadok na tokeny na základe oddeľovača čiarok.

Zoznam records = new ArrayList (); try (BufferedReader br = new BufferedReader (new FileReader ("book.csv")))) {String line; while ((line = br.readLine ())! = null) {String [] values ​​= line.split (COMMA_DELIMITER); records.add (Arrays.asList (hodnoty)); }}

Pri tomto prístupe si všimnite, že sofistikovanejšie súbory CSV (napr. Citácie alebo čiarky ako hodnoty) nebudú analyzované podľa plánu.

3. Skener v java.util

Ďalej použijeme a java.util.Scanner spustiť obsah súboru a postupne načítať riadky:

Zoznam records = new ArrayList (); try (Scanner scanner = new Scanner (new File ("book.csv"));) {while (scanner.hasNextLine ()) {records.add (getRecordFromLine (scanner.nextLine ())); }}

Potom analyzujeme riadky a uložíme ich do poľa:

private List getRecordFromLine (reťazec) {List values ​​= new ArrayList (); try (Scanner rowScanner = new Scanner (line)) {rowScanner.useDelimiter (COMMA_DELIMITER); while (rowScanner.hasNext ()) {values.add (rowScanner.next ()); }} návratové hodnoty; }

Rovnako ako predtým, ani pri tomto prístupe nebudú sofistikovanejšie súbory CSV analyzované podľa plánu.

4. OpenCSV

Zložitejšie súbory CSV môžeme adresovať pomocou OpenCSV.

OpenCSV je knižnica tretej strany, ktorá poskytuje API na prácu so súbormi CSV. Použijeme readNext () metóda v CSVReader prečítať záznamy v súbore:

Zoznam records = nový ArrayList(); try (CSVReader csvReader = nový CSVReader (nový FileReader ("book.csv"));) {String [] hodnoty = null; while ((values ​​= csvReader.readNext ())! = null) {records.add (Arrays.asList (values)); }}

Ak sa chcete ponoriť hlbšie a dozvedieť sa viac o OpenCSV - môžeme si pozrieť náš tutoriál OpenCSV.

5. Záver

V tomto rýchlom výučbe sme preskúmali rôzne spôsoby, ako načítať súbor CSV do poľa.

Celý zdrojový kód príkladov je ako vždy k dispozícii na serveri GitHub.


$config[zx-auto] not found$config[zx-overlay] not found