Kiểm tra xem thư mục có tồn tại không

Clojure:
Kiểm tra xem thư mục có tồn tại không

Làm thế nào:

Sử dụng clojure.java.io/file để tạo một đối tượng File và .exists để kiểm tra xem nó có tồn tại hay không. Phương thức isDirectory xác nhận liệu File có phải là một thư mục không.

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

(defn directory-exists? [path]
  (let [dir (io/file path)]
    (and (.exists dir) (.isDirectory dir))))

;; Ví dụ sử dụng:
(directory-exists? "/path/to/directory") ;=> true hoặc false

Kết quả Mẫu:

true ; nếu thư mục tồn tại
false ; nếu thư mục không tồn tại

Khám phá sâu hơn

Trong lịch sử, một quy trình tương tự được sử dụng trong Java; vì Clojure chạy trên JVM, nó tận dụng các thư viện Java cho các hoạt động hệ thống tệp. Các phương án thay thế trong Clojure có thể bao gồm việc sử dụng các chức năng hoặc thư viện Java khác như nio.file.Files. Phía sau, việc kiểm tra tồn tại của một thư mục có thể tiêu tốn nhiều IO và có thể hoạt động khác nhau giữa các hệ điều hành và quyền hệ thống tệp, đó là lý do tại sao việc đảm bảo sự tồn tại của nó trước khi thực hiện thêm các thao tác là rất quan trọng.

Xem thêm