Clojure:
Odczytywanie pliku tekstowego

How to:

(Jak to zrobić:)

Czytanie pliku w Clojure może być proste jak bułka z masłem. Oto przykłady:

;; Czytanie całego pliku na raz
(slurp "ścieżka/do/pliku.txt")

;; Czytanie linia po linii
(with-open [r (clojure.java.io/reader "ścieżka/do/pliku.txt")]
  (doseq [line (line-seq r)]
    (println line)))

Jeśli masz plik przyklad.txt z treścią “Cześć, Clojure!”, to wynik będzie:

"Cześć, Clojure!"

Deep Dive:

(Głębsze zanurzenie:)

Wczesne lata programowania opierały się na czytaniu danych z kart perforowanych i taśm magnetycznych. Dzisiaj pliki tekstowe to podstawowa forma wymiany i przechowywania danych.

Alternatywy dla slurp i line-seq obejmują stosowanie niskopoziomowego Java API, używając java.io.BufferedReader dla większej kontroli nad procesem czytania.

Szczegóły implementacji: slurp ładnie obsługuje małe pliki, ale nie nadaje się do dużych, bo zużywa zbyt wiele pamięci. Dla dużych plików lepiej używać line-seq w with-open, co zapewnia stopniowe czytanie i automatyczne zamknięcie zasobów.

See Also:

(Zobacz również:)