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.