我需要通过 Java 程序运行一个字符串,然后检索输出。 Java 程序通过标准输入接受字符串。以下作品:
my $output = `echo $string | java -jar java_program.jar`;
有一个问题:$string
可以是任何东西。对于解决这个问题有什么好的想法吗?
我建议你看看IPC::Run3 http://search.cpan.org/perldoc?IPC::Run3模块。它使用非常简单的界面并允许获取STDERR
and STDOUT
。这是一个小例子:
use IPC::Run3;
## store command output here
my ($cmd_out, $cmd_err);
my $cmd_input = "put your input string here";
run3([ 'java', '-jar', 'java_program.jar'], \$cmd_input, \$cmd_out, \$cmd_err);
print "command output [$cmd_out] error [$cmd_err]\n";
See IPC::Run3
与其他模块的比较 http://search.cpan.org/~rjbs/IPC-Run3-0.043/lib/IPC/Run3.pm#COMPARISON.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)