Clojure:
כתיבת קובץ טקסט

איך לעשות:

כתיבת טקסט לקובץ באמצעות הפונקציות המובנות של Clojure

הפונקציה spit היא הדרך הפשוטה ביותר לכתוב טקסט לקובץ ב-Clojure. היא לוקחת שני ארגומנטים: נתיב הקובץ והמחרוזת לכתיבה. אם הקובץ לא קיים, spit תייצר אותו. אם הוא כן קיים, spit תדרוס אותו.

(spit "example.txt" "שלום, עולם!")

להוספת טקסט לקובץ קיים, ניתן להשתמש בפונקציה spit עם האפשרות :append.

(spit "example.txt" "\nבואו נוסיף שורה חדשה זו." :append true)

לאחר הרצת קטעי קוד אלו, “example.txt” יכיל:

שלום, עולם!
בואו נוסיף שורה חדשה זו.

שימוש בספריות צד שלישי

למרות שהיכולות המובנות של 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 "זה נכתב באמצעות clojure.java.io"))

זה ייצור (או ידרוס אם כבר קיים) “example_with_io.txt” עם הטקסט:

זה נכתב באמצעות clojure.java.io

זכור: with-open מבטיח שהקובץ נסגר כראוי לאחר הכתיבה, ומונע דליפות משאבים פוטנציאליות.