我试图在java程序中运行R脚本并将结果输出到文本文件中。
这是我的java代码:
import java.io.*;
public class rclass {
public static void main(String[] args) {
try {
String line;
Process p = Runtime.getRuntime().exec("RScript /Users/test.R iphone5 2012-12-16 2013-01-03");
p.waitFor();
BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));
while((line = input.readLine()) != null) {
System.out.println(line);
}
input.close();
} catch(Exception e) {
e.printStackTrace();
}
}
}
以下是我将r结果输出到文本文件中的方法:
out<-capture.output(scores)
cat(out, file="/Users/mmmmmm/Desktop/result.txt", sep="\n",append=TRUE)
当我运行java代码时,我的r脚本没有输出到文本文件中。但是当我从终端运行命令时,它运行良好。我无法找到问题所在。有人可以给我一些建议吗?
答案 0 :(得分:0)
这不是解决方案,因为我无法重现问题。但是为什么不在文件中使用Rscript
输出结果?
例如,您可以执行类似这样的操作,将输出和错误放在同一个文件中
RScript /Users/test.R iphone5 2012-12-16 2013-01-03 > result.txt 2>&1