usando clojure-csv.core para analizar un enorme archivo csv
Hasta ahora tengo:
(:require [clojure-csv.core :as csv])
(:require [clojure.java.io :as io]))
(def csv-file (.getFile (clojure.java.io/resource "verbs.csv")))
(defn process-csv [file]
(with-open [rdr (io/reader file)]
(csv/parse-csv rdr)))
Pero me estoy poniendojava.io.IOException: Stream closed
. estoy usandoclojure-csv y expone dos métodos, el primero de los cuales estoy usando,parse-csv
, el doc dice:
Takes a CSV as a char sequence or string, and returns a lazy sequence of vectors of strings
Lo que creo que sé:with-open
es perezoso, y elrdr
en(csv/parse-csv rdr)))
¿Es una sola línea del archivo csv correcto?
PD. También me gustaría buscar en el archivo, ¿es caro abrirlo repetidamente (aunque se está leyendo con pereza) y buscar todo el contenido?