gpt4 book ai didi

java - 创建一个文本文件,然后将打印到 REPL 的内容写入文本文件

转载 作者:行者123 更新时间:2023-12-04 03:46:08 25 4
gpt4 key购买 nike

如何从 clj 文件中获取通过函数“print”输出到 REPL 的内容并将其全部放入文本文件中?有没有办法创建一个新的空文本文件并将其与其他 clj 文件一起放在项目目录中并对其进行处理?

谢谢。

最佳答案

您可以通过重新绑定(bind) *out* 来完成此操作>

(binding [*out* (clojure.java.io/writer "foo.txt")]
(print "Hello World"))

(print "This does NOT go to the file") ;; outside the binding macro

运行后,应该有一个名为 foo.txt 的文件,其中包含“Hello World”。

唯一需要注意的是,这种重新绑定(bind)只会影响在 binding 宏中评估的表单。


这会将 *out* 重新绑定(bind)到文件编写器,并且不需要使用 binding 宏。

(set! *out* (clojure.java.io/writer "foo.txt"))

(print "foo") ;; written to foo.txt
(print "bar") ;; written to foo.txt

我不确定重新设置这个变量是否会有任何负面影响。 谨慎使用!

关于java - 创建一个文本文件,然后将打印到 REPL 的内容写入文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15077461/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com