據我所知,你有一串字符串。 Clojure爲序列提供了一個非常具體的toString實現,你可以看到它here。
如果你做(str d1)
或者只需在repl中輸入d1
並按回車鍵,你會看到或多或少你輸入的內容:字符串序列(字符串被打印爲雙引號中的字符序列)。
現在,如果你想連接你可以做到這一點的字符串:
(apply str d1)
如果你想打印用逗號分開,你可以這樣做:
(apply str (interpose "," d1))
要輸出爲CSV格式我建議使用clojure-csv。
最後,如果你只是想打印的清單,但沒有字串,雙引號,你可以這樣做:
(print d1)
希望這有助於。
EDIT1(更新由於問題的變化):
(apply str (interpose "|" d1))
請不要關注圍繞整個雙引號:
這可以很容易地實現結果如果你print
it或spit
它變成一個文件你不會看到它們,這就是Clojure如何打印字符串readably。
另外,如果您有想一次輸出,你仍然可以使用Clojure的-CSV但不同的分隔多個序列那樣:
(ns csv-test.core
(:require [clojure-csv.core :as csv]))
(def d1 (list "9990999" "43" "ROADWAY" "MORRISON, VAN X DMD" "43 ROADWAY" "SOMETHINGTON" "XA" "00000" "501" "18050" "2500" "1180" "14370" "0"))
(print (csv/write-csv [d1] :delimiter "|"))
;;prints:
;;9990999|43|ROADWAY|MORRISON, VAN X DMD|43 ROADWAY|SOMETHINGTON|XA|00000|501|18050|2500|1180|14370|0
是實際數據的雙引號部分或者他們只是代表一個字符串的分隔符? – bostonou
要回答你的評論,我編輯了OP。 – octopusgrabbus
只是想讓你知道我已經更新了我的答案。 –