用编写器在Clojure中编写CSV文件

时间:2018-06-21 13:50:27

标签: java csv clojure server

我需要从服务器返回一个CSV文件。

我有一个简单的数据映射,我不想在磁盘上创建文件,我看到write-csv函数可以接受作家的参数。

类似的东西(但它不起作用):

(csv/write-csv (java.io.BufferedWriter. (java.io.OutputStream.  )) csv-data)

错误:

:cause java.io.OutputStream
 :via
 [{:type java.lang.InstantiationError
   :message java.io.OutputStream

2 个答案:

答案 0 :(得分:1)

如果只需要一个字符串,则可以使用with-out-str

(with-out-str
  (csv/write-csv *out* csv-data))

答案 1 :(得分:1)

弄清楚了。这是我的解决方案:

(let [writer (java.io.StringWriter.)]
    (csv/write-csv writer csv-data)
    (.toString writer))