2016-04-28 22 views
1

Runtime.getRuntime().exec("ls > 1.txt")を使用して出力をテキストファイルにリダイレクトするが動作しません。私は文字列の代わりに文字列配列を渡してみましたが、それは動作しませんでした。openを開くなどの他のコマンドは正常に動作しています。javaで ">"を使用して端末コマンドを実行

出力をテキストファイルにリダイレクトする方法はありますか。

答えて

2

Runtime.exec()を使用することは悪いことですが、ProcessBuilderを使用する必要があります。
ProcessBuilderには.redirectOutput()メソッドがあり、プロセスの出力を受け取る場所を定義することができます。

+0

ご提案いただきありがとうございます。 ">>"のように既存のファイルにデータを追加する方法はありますか? –

+0

あります: '.redirectOutput()'は 'ProcessBuilder.Redirect'を期待します。これは' ProcessBuilder.Redirect.to(File f) '、ファイルの上書き、' ProcessBuilder.Redirect.appendTo(File f) ) '' ''のように追加します – Aaron

関連する問題