Clojure:
Työskentely CSV:n kanssa
Kuinka:
CSV-tiedoston lukeminen
Clojurella ei ole sisäänrakennettua CSV:n jäsentämistä sen vakio-kirjastossa, mutta voit käyttää clojure.data.csv -kirjastoa tähän tarkoitukseen. Lisää ensin kirjasto projektisi riippuvuuksiin.
project.clj-tiedostoosi, lisää seuraava riippuvuus:
[clojure.data.csv "1.0.0"]Lue CSV-tiedosto ja tulosta jokainen rivi:
(require '[clojure.data.csv :as csv]
'[clojure.java.io :as io])
(with-open [reader (io/reader "polku/tiedostoosi.csv")]
(doall
(map println (csv/read-csv reader))))Tämä tulostaa jokaisen CSV:n rivin Clojure-vektorina.
Kirjoittaminen CSV-tiedostoon
Voit kirjoittaa dataa CSV-tiedostoon käyttämällä samaa clojure.data.csv -kirjastoa:
(require '[clojure.data.csv :as csv]
'[clojure.java.io :as io])
(let [data [["id" "nimi" "ikä"]
["1" "John Doe" "28"]
["2" "Jane Doe" "31"]]]
(with-open [writer (io/writer "polku/tulostetiedosto.csv")]
(csv/write-csv writer data)))Tämä luo tai ylikirjoittaa tulostetiedosto.csv, täyttäen sen määritellyllä datalla.
Kolmannen osapuolen kirjaston käyttäminen: clojure.data.csv
Vaikka clojure.data.csv onkin ehkä suoraviivaisin kirjasto CSV-käsittelyyn Clojuressa, monimutkaisempiin tehtäviin, kuten erikoismerkkejä sisältävien CSV:iden tai epätavallisten erotinmerkkien käsittelyyn, saattaisit tutkia lisävaihtoehtoja ekosysteemissä tai jopa harkita Java-interoppia kirjastojen kuten Apache Commons CSV kanssa. Kuitenkin useimmille standardeille CSV:n käsittelytehtäville Clojuressa, clojure.data.csv tarjoaa yksinkertaisen ja tehokkaan työkalupakin.