我想获取文件并重定向以在变量中打印错误。我尝试了下一个代码,我在这个网址In R, is it possible to redirect console output to a variable?中找到但没有成功......
这是我运行的例子:
out<-vector("character")
con<- textConnection('out', 'wr')
sink(con)
source('some_file.R', encoding = 'UTF-8') #failed capturing
sink()
close(con)
我也发现了这个 - &gt; 4.3. Redirecting Output to a File但也没有成功......
这是我运行的例子:
sink("script_output.txt") # Redirect output to file
source("script.R") # Run the script, capturing its output
sink() # Resume writing output to console
我不知道为什么它不起作用。哪里错了?
如果标签或问题不是&#34;完成&#34;随时改变它。
答案 0 :(得分:0)
毕竟我找到了解决方案。
out<-vector("character")
con<- textConnection('out', 'wr')
sink(con,type = "message")
source('some_file.R', encoding = 'UTF-8')
sink(type = "message")
close(con)
它总是不起作用。 但我找到了更好的解决方案。 Konrad Rudolph告诉我使用try但我最终想要tryCatch。这是完美运行的代码。
tryCatch(source('some_file.R', encoding = 'UTF-8') ,
error=function(the error that occurs){
do something wih that error.
},
warning=function(the warning that occurs){
do something wih that warning.
})