2016-02-29 33 views

回答

2

對此,您可以使用clojure.end/read-string函數。它確保沒有人向您的系統注入代碼,但否則會解析clojure數據結構。前面加上「{」和追加「}」使其成爲一個地圖,可以分析這樣:

(def stringtoparse ":first \"John\" :last \"Lukas\" :city \"London\"") 

(clojure.edn/read-string (str "{" stringtoparse "}")) 
+0

當我使用該模塊clojure.edn我得到一個錯誤:ClassNotFoundException的clojure.edn java.net.URLClassLoader的.findClass(URLClassLoader.java:381) 我使用Clojure 1.7。這個模塊只存在於Clojure 1.8中嗎?無論如何在1.7版本中使用它? – CrazySynthax

+0

什麼版本的clojure正在使用? clojure.edn命名空間自Clojure 1.5以來就存在。 –

+0

我使用1.7,我發現它在我沒有提到「clojure.edn」時起作用。 Just(read-string(str「{」stringtoparse「}」)) - 它的工作原理! – CrazySynthax