Clojure:
การเขียนไฟล์ข้อความ
วิธีการ:
เขียนข้อความไปยังไฟล์โดยใช้ฟังก์ชันที่มีอยู่ใน Clojure
ฟังก์ชัน spit
คือวิธีที่ง่ายที่สุดในการเขียนข้อความลงในไฟล์ใน Clojure มันรับอาร์กิวเมนต์สองอย่าง: ที่อยู่ไฟล์และสตริงที่จะเขียน หากไฟล์นั้นไม่มีอยู่ spit
จะสร้างมันขึ้นมา หากมีอยู่แล้ว spit
จะเขียนทับ
(spit "example.txt" "Hello, world!")
เพื่อเพิ่มข้อความไปยังไฟล์ที่มีอยู่แล้ว คุณสามารถใช้ฟังก์ชัน spit
พร้อมกับตัวเลือก :append
.
(spit "example.txt" "\nLet's add this new line." :append true)
หลังจากรันส่วนประกอบเหล่านี้ “example.txt” จะมีข้อความ:
Hello, world!
Let's add this new line.
การใช้ไลบรารีของบุคคลที่สาม
ตามที่ความสามารถภายในที่มากับ Clojure มักจะเพียงพอแล้ว ชุมชนได้พัฒนาไลบรารีที่ทรงพลังสำหรับงานที่ซับซ้อนหรือต้องการความเฉพาะเจาะจงมากขึ้น สำหรับไอ/โอไฟล์ หนึ่งในไลบรารียอดนิยมคือ clojure.java.io
ซึ่งให้วิธีการจัดการไฟล์ที่คล้ายกับ Java มากขึ้น
ในการใช้ clojure.java.io
สำหรับการเขียนไปยังไฟล์ คุณต้องนำเข้ามันก่อน:
(require '[clojure.java.io :as io])
จากนั้น คุณสามารถใช้ฟังก์ชัน writer
เพื่อรับอ็อบเจ็กต์ writer และฟังก์ชัน spit
(หรือฟังก์ชันอื่นๆ เช่น print
, println
) เพื่อเขียนลงไปในไฟล์:
(with-open [w (io/writer "example_with_io.txt")]
(.write w "This is written using clojure.java.io"))
สิ่งนี้จะสร้าง (หรือเขียนทับหากมันมีอยู่แล้ว) “example_with_io.txt” ด้วยข้อความ:
This is written using clojure.java.io
จำไว้ว่า: with-open
จะรับรองว่าไฟล์ถูกปิดอย่างถูกต้องหลังจากเขียน เพื่อหลีกเลี่ยงการรั่วไหลของทรัพยากร.