בדיקה אם ספרייה קיימת

Clojure:
בדיקה אם ספרייה קיימת

איך לעשות:

Clojure, בתור שפה של JVM, יכולה להשתמש במחלקה java.io.File של Java למטרה זו. אין צורך בספרייה צד שלישי לפעולה בסיסית כזו. הנה איך אפשר לעשות זאת:

(import 'java.io.File)

(defn directory-exists? [dir-path]
  (let [dir (File. dir-path)]
    (.exists dir)))

;; דוגמה לשימוש
(println (directory-exists? "/path/to/your/directory")) ;; true או false

פונקציה זו, directory-exists?, לוקחת נתיב ספרייה כמחרוזת ומחזירה true אם הספרייה קיימת ו-false אחרת. זה מושג על ידי יצירת אובייקט File עם נתיב הספרייה ואז קריאה למתודה .exists על אובייקט זה.

בנוסף לעבודה ישירה עם Java, ניתן להשתמש בספריות Clojure שמפשטות חלק מהקוד הגנרי של Java. ספרייה אחת כזו היא clojure.java.io. עם זאת, לצורך בדיקה אם ספרייה קיימת, עדיין תשתמשו במחלקה File, אך יתכן שתמצאו את הספרייה שימושית לפעולות קובץ אחרות. דוגמה:

(require '[clojure.java.io :as io])

(defn directory-exists?-clojure [dir-path]
  (.exists (io/file dir-path)))

;; דוגמה לשימוש
(println (directory-exists?-clojure "/another/path/to/check")) ;; true או false

גרסה זו דומה מאוד אך משתמשת בפונקציה io/file של Clojure ליצירת אובייקט הFile. שיטה זו משתלבת בצורה טבעית יותר בבסיסי קוד של Clojure על ידי ניצול ספריית Clojure לפעולות IO, במקום לעבוד ישירות עם מחלקות Java.