从Perl到Java的数据检索

时间:2013-07-26 13:22:43

标签: perl

目前,我正在从Perl读取一些数据,我想从Perl中检索每一步的消息。我尝试使用此代码,

 Process process = Runtime.getRuntime().exec(new String[] {"perl","C:\\Perl\\bin\\try.pl", "uname=test"});
 BufferedReader reader =new BufferedReader(new InputStreamReader(process.getInputStream()));
 String s = reader.readLine();
  System.out.println("perl said [ " + s + " ]");

我的perl脚本如下,

$path_to_file = $ARGV[0] or die("argument not passed") ;
print "success";
# some code

如果我没有收到任何参数,那么我们需要检索消息,没有传递参数。就像我想要记录所有信息。我试过给出打印数据。那很有效。但如果论证没有通过。我想要参数未传递的数据。

是否可以检索?

1 个答案:

答案 0 :(得分:1)

我在此找到了上述问题的答案,

Process process = Runtime.getRuntime().exec(new String[] {"perl","C:\\Perl\\bin\\try.pl", "uname=test"});
BufferedReader readError = new BufferedReader( new InputStreamReader(process.getErrorStream()));
    s = readError.readLine();
     System.err.println("perl said [ " + s + " ]");

通过这种方式我捕获错误详细信息。谢谢你的所有建议。另外,我更改了我的perl脚本,如下所示,

my $path_to_file = $ARGV[0] or   {print " Argument not passed! " };