在clojure中读取文件并使用命令提示符显示内容
我已阅读了以下文件在clojure中读取文件并使用命令提示符显示内容,clojure,scripting,command-prompt,Clojure,Scripting,Command Prompt,我已阅读了以下文件 (defn get-lines [file] (with-open [rdr (clojure.java.io/reader file)] (count (line-seq rdr)))) (get-lines "D:/clojurefile/t2/ct.txt") 但它不显示内容 我想在提示时打印文件中的数据 (count(line seq rdr))返回文件中的行数。您应该删除count以打印文件的全部内容: (defn get-lines [
(defn get-lines [file]
(with-open [rdr (clojure.java.io/reader file)]
(count (line-seq rdr))))
(get-lines "D:/clojurefile/t2/ct.txt")
但它不显示内容
我想在提示时打印文件中的数据 (count(line seq rdr))
返回文件中的行数。您应该删除count
以打印文件的全部内容:
(defn get-lines [file]
(with-open [rdr (clojure.java.io/reader file)]
(line-seq rdr)))
(println (get-lines "D:/clojurefile/t2/ct.txt"))
编辑:要从命令行(而不是在REPL中)打印文件内容,您应该使用上面编辑的打印功能。此外,如果文件不太大,则使用slurp
功能会更简单,该功能会立即读取内存中的文件内容,而不是使用open:
(println (slurp "D:/clojurefile/t2/ct.txt"))
我试过移除,但不起作用!如果可能的话,你能建议我使用slurp功能吗?你试过打印吗<代码>(println(doall(行顺序rdr)))。既然您提到了从命令行(即stdout)看到这一点,您需要将其打印出来。@jayk:do
(print(slurp“D:/clojurefile/t2/ct.txt))
不适合您吗?