Есть ли функция чтения в clojure для синтаксического анализа структуры данных clojure? Моим вариантом использования является чтение файлов свойств конфигурации, а одно значение для свойства должно быть списком. Я хотел бы написать это как:
file.properties:
property1 = ["value1" "value2"]
и в clojure:
(load-props "file.properties")
и получить карту со значением {property1, [ "value1" "value2" ]
Прямо сейчас, я делаю следующее, с тем же входным файлом "file.properties":
(defn load-props [filename]
(let [io (java.io.FileInputStream. filename)
prop (java.util.Properties.)]
(.load prop io)
(into {} prop)))
;; returns:
;; {"property1" "[\"valu1\", \"valu2\"]"}
(load-props "file.properties")
Но я не могу получить способ разобрать результат на вектор clojure. Я в основном ищу что-то вроде файла Erlang: consult/1 function. Любая идея, как это сделать?