2

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 スクリプトからテキスト ファイルへの出力がありません。しかし、ターミナルからコマンドを実行すると、うまく機能します。問題が見つかりません。誰か私にいくつかの提案を教えてください。

4

1 に答える 1

0

問題を再現できないため、これは解決策ではありません。しかしRscript、ファイルを使用して結果を出力しないのはなぜですか?

たとえば、出力とエラーを同じファイルに入れるために、このようなことを行うことができます

 RScript /Users/test.R iphone5 2012-12-16 2013-01-03 > result.txt 2>&1
于 2013-01-10T19:09:36.253 に答える