Clojure:
Làm việc với YAML
Làm thế nào:
Clojure không bao gồm hỗ trợ tích hợp sẵn cho YAML. Bạn sẽ cần sử dụng một thư viện như clj-yaml
. Đầu tiên, thêm nó vào phần phụ thuộc của bạn:
;; Thêm vào project.clj hoặc deps.edn
[clj-yaml "0.7.0"]
Bây giờ, hãy phân tích một chuỗi YAML thành một bản đồ Clojure và ngược lại:
(require '[clj-yaml.core :as yaml])
;; Phân tích chuỗi YAML thành bản đồ Clojure
(let [yaml-str "foo: bar\nbaz: 42"]
(yaml/parse-string yaml-str))
;; => {"foo" "bar", "baz" 42}
;; Chuyển đổi bản đồ Clojure thành YAML
(let [clojure-map {"foo" "bar", "baz" 42}]
(yaml/generate-string clojure-map))
;; Xuất ra chuỗi YAML:
;; foo: bar
;; baz: 42
Sâu hơn
YAML được phát hành lần đầu vào năm 2001, với mục tiêu là dễ đọc hơn XML trong khi cung cấp cấu trúc dữ liệu phong phú hơn JSON. clj-yaml
được xây dựng trên SnakeYAML, một thư viện Java, cho phép tương tác với các ngôn ngữ JVM. Các lựa chọn thay thế bao gồm việc sử dụng trực tiếp org.yaml.snakeyaml
hoặc cheshire
cho việc chuyển đổi JSON, vì JSON là một tập con của YAML.
Xem thêm
Khám phá sâu hơn với những tài nguyên này:
- Trang chính thức của YAML: https://yaml.org
- Github cho clj-yaml: https://github.com/clj-commons/clj-yaml
- SnakeYAML Engine: https://bitbucket.org/asomov/snakeyaml-engine