Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在clojure中读取文件并使用命令提示符显示内容_Clojure_Scripting_Command Prompt - Fatal编程技术网

在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))
不适合您吗?