我可以声明输出到控制台的文件吗?
Can I declare file for output to console?
我有一个例程要编写(writeLines with sprintf)以将一些值输出到控制台。
有人要求我对 txt 文件执行相同的输出。
我现在所拥有的是复制第一组 "writeLine"s 并将它们更改为 write(..., file)
我找不到是否可以向控制台声明文件。我在想的是有一个函数来执行此操作并传递一个参数(文件),然后只传递一组用于写入和调用的语句
diskfile <- file("results.txt", "w")
printresults("console") # This is the part I don't know how
printresults(diskfile)
如果我对文件执行打印结果,我可以从中读取并呈现给控制台。我正在使用:
cat(readlines, ...)
这很好用,但我更喜欢函数解决方案。
有办法吗?
感谢您的宝贵时间,
编辑>>>更具体
我可以写 (sprintf(...), CONSOLE) 吗?
sink()
(我的最爱)会成功吗?
sink("file.txt", append = FALSE, split = TRUE)
print("Hello world")
sink()
使用 split = TRUE
时,输出会同时传递到控制台和文本文件,第二次调用 sink()
会将输出还原回控制台。
控制台和file.txt
打印
"Hello world"
我有一个例程要编写(writeLines with sprintf)以将一些值输出到控制台。
有人要求我对 txt 文件执行相同的输出。
我现在所拥有的是复制第一组 "writeLine"s 并将它们更改为 write(..., file)
我找不到是否可以向控制台声明文件。我在想的是有一个函数来执行此操作并传递一个参数(文件),然后只传递一组用于写入和调用的语句
diskfile <- file("results.txt", "w")
printresults("console") # This is the part I don't know how
printresults(diskfile)
如果我对文件执行打印结果,我可以从中读取并呈现给控制台。我正在使用:
cat(readlines, ...)
这很好用,但我更喜欢函数解决方案。
有办法吗?
感谢您的宝贵时间,
编辑>>>更具体
我可以写 (sprintf(...), CONSOLE) 吗?
sink()
(我的最爱)会成功吗?
sink("file.txt", append = FALSE, split = TRUE)
print("Hello world")
sink()
使用 split = TRUE
时,输出会同时传递到控制台和文本文件,第二次调用 sink()
会将输出还原回控制台。
控制台和file.txt
打印
"Hello world"