Returns the lines of text from rdr as a lazy sequence of strings.
rdr must implement java.io.BufferedReader.
(import '(java.io BufferedReader StringReader))
;; line terminators are stripped
user=> (line-seq (BufferedReader. (StringReader. "1\n2\n\n3")))
("1" "2" "" "3")
;; empty string gives nil
user=> (line-seq (BufferedReader. (StringReader. "")))
nil
(defn line-seq
"Returns the lines of text from rdr as a lazy sequence of strings.
rdr must implement java.io.BufferedReader."
{:added "1.0"
:static true}
[^java.io.BufferedReader rdr]
(when-let [line (.readLine rdr)]
(cons line (lazy-seq (line-seq rdr)))))
Comments top
No comments for line-seq. Log in to add a comment.