我想使用clojure从文件中读取前n行。这里是我的代码:如何在clojure中从文件中读取n行
(defn read-nth-line [file]
(with-open [rdr (reader file)]
(loop [line-number 0]
(when (< line-number 20)
(nth (line-seq rdr) line-number)
(recur (inc line-number))))))
但是当我运行
user=> (read-nth-line "test.txt")
IndexOutOfBoundsException clojure.lang.RT.nthFrom (RT.java:871)
我不知道为什么我有这样的错误。
'test.txt'包含20多行吗? – ClasG
你可以添加需求到你的问题?我喜欢能够将粘贴代码复制到REPL中:(需要'[clojure.java.io:参考[reader]]) –