在Java中调用Perl脚本

2014-11-23 21:52:20 · 作者: · 浏览: 60

  有两种方法,第一种是直接 Runtime.getRuntime().exec("...");


  这里推荐第二种,可以得到输出和返回值:源代码如下:


  import java.io.BufferedReader;


  import java.io.InputStream;


  import java.io.InputStreamReader;


  public class ExecPerl {


  public static void main(String args[]) {


  String[] cmd = { "C:\\cygwin\\bin\\perl.exe", "sample.pl", "param1", "param2" };


  StringBuffer resultStringBuffer = new StringBuffer();


  String lineToRead = "";


  // get Process to execute perl, get the output and exitValue


  int exitValue = 0;


  try {


  Process proc = Runtime.getRuntime().exec(cmd);


  InputStream inputStream = proc.getInputStream();


  BufferedReader bufferedRreader = new BufferedReader(new InputStreamReader(inputStream));


  // save first line


  if ((lineToRead = bufferedRreader.readLine()) != null) {


  resultStringBuffer.append(lineToRead);


  }