Clojure:
텍스트 파일 읽기

How to: (어떻게 할까요?)

Clojure에서 텍스트 파일을 쉽게 읽을 수 있습니다. slurp 함수를 사용하면 전체 내용을 문자열로 불러올 수 있죠.

;; 전체 파일을 한 번에 읽기
(slurp "example.txt")

파일이 큰 경우, line-seq와 함께 reader를 사용하여 라인별로 읽을 수 있습니다.

;; 파일을 라인별로 읽기
(with-open [rdr (reader "example.txt")]
  (doseq [line (line-seq rdr)]
    (println line)))

샘플 출력:

"첫 번째 줄"
"두 번째 줄"
"세 번째 줄"

Deep Dive (심층 분석)

slurp 함수는 Clojure의 가장 간단한 파일 읽기 방법입니다. 하지만 큰 파일을 처리할 때는 메모리 문제를 일으킬 수 있습니다. line-seqreader는 파일을 순차적으로 읽어 이 문제를 해결합니다.

역사적으로 파일 읽기는 대부분의 프로그래밍 언어에서 필수적인 기능이었습니다. slurpline-seq 같은 함수는 이를 추상화하여 Clojure 프로그래머들에게 간편한 인터페이스를 제공합니다.

읽기 옵션을 더 다양하게 제어하려면 Java의 I/O 라이브러리를 직접 사용할 수도 있습니다. 그러나 Clojure 함수들은 대부분의 경우 충분합니다.

See Also (참고자료)