Elixir:
การทำงานกับ YAML
วิธีการ:
Elixir ไม่มีการรองรับ YAML โดยตรง อย่างไรก็ตาม คุณสามารถใช้ไลบรารีของบุคคลที่สาม เช่น yamerl
หรือ yaml_elixir
เพื่อทำงานกับ YAML ที่นี่ เราจะเน้นที่ yaml_elixir
เนื่องจากมีความง่ายในการใช้งานและคุณสมบัติที่ครอบคลุม
ก่อนอื่น เพิ่ม yaml_elixir
ไปยัง dependencies ของคุณใน mix.exs:
defp deps do
[
{:yaml_elixir, "~> 2.9"}
]
end
จากนั้น รัน mix deps.get
เพื่อดึง dependency ใหม่
การอ่าน YAML
หากมีไฟล์ YAML ง่ายๆ เช่น config.yaml
ที่มีลักษณะดังนี้:
database:
adapter: postgres
username: user
password: pass
คุณสามารถอ่านไฟล์ YAML นี้และแปลงเป็นแผนที่ของ Elixir ได้ดังนี้:
defmodule Config do
def read do
{:ok, content} = YamlElixir.read_from_file("config.yaml")
content
end
end
# ตัวอย่างการใช้งาน
Config.read()
# ผลลัพธ์:
# %{
# "database" => %{
# "adapter" => "postgres",
# "username" => "user",
# "password" => "pass"
# }
# }
การเขียน YAML
เพื่อเขียนแผนที่กลับไปยังไฟล์ YAML:
defmodule ConfigWriter do
def write do
content = %{
database: %{
adapter: "mysql",
username: "root",
password: "s3cret"
}
}
YamlElixir.write_to_file("new_config.yaml", content)
end
end
# ตัวอย่างการใช้งาน
ConfigWriter.write()
# นี่จะสร้างหรือเขียนทับ `new_config.yaml` ด้วยเนื้อหาที่ระบุ
สังเกตว่า yaml_elixir
ช่วยให้การแปลระหว่างไฟล์ YAML และโครงสร้างข้อมูล Elixir เป็นไปอย่างตรงไปตรงมา ทำให้เป็นตัวเลือกที่ยอดเยี่ยมสำหรับโปรแกรมเมอร์ Elixir ที่จำเป็นต้องทำงานกับข้อมูล YAML