0

Java内でpythonコマンドを実行したいと思います。

コマンドの形式は次のとおりです。

python abc.py TAG < xyz.txt

Javaのプロセスを使用する場合:

Process p=Runtime.getRuntime().exec("python abc.py TAG < xyz.txt");

は、パイプラインの最終的な意味ではなく、への< xyz.txt引数として解釈されているため、間違った引数エラーが発生します。abc.pyxyz.txt

パイピング機能を持つJavaコマンドを実行する方法はありますか?

4

1 に答える 1

2

exec()シェルは含まれません。そのようなことはできません。

exec()シェルが必要で、試しているときにpythonプロセスを実行するか pythonプロセスが必要で、Javaでファイルをexec()開いて読み取ってxyz.txtから、データをexec'dプロセスの標準に送信します(オブジェクトからそのストリームを取得できProcessます)。

于 2012-12-09T04:04:13.180 に答える