虽然JAVA是平台无关性的,但是在企业中很多时候还是在为特定的系统在开发,会要求调用一些当前系统的其他程序或命令。最常见的是在WINDOWS中。其实JAVA是可以通过Runtime去调用系统中的一些程序的,下面是一个例子:
try
{
ps = Runtime.getRuntime().exec( " E:\\test.exe " );
// ps = Runtime.getRuntime().exec("ipconfig"); ---- For execute windows commands
// ps = Runtime.getRuntime().exec("E:\\test.bat"); ---- For run BAT files
BufferedReader in = new BufferedReader( new InputStreamReader(ps.getInputStream()));
String inputLine;
while ((inputLine = in.readLine()) != null ) {
result += inputLine + " \n " ;
}
in.close();
System.out.println( " Output: " + result);
} catch (Exception ex) {
System.out.println( " Error " + ex.getMessage());
}
ps = Runtime.getRuntime().exec( " E:\\test.exe " );
// ps = Runtime.getRuntime().exec("ipconfig"); ---- For execute windows commands
// ps = Runtime.getRuntime().exec("E:\\test.bat"); ---- For run BAT files
BufferedReader in = new BufferedReader( new InputStreamReader(ps.getInputStream()));
String inputLine;
while ((inputLine = in.readLine()) != null ) {
result += inputLine + " \n " ;
}
in.close();
System.out.println( " Output: " + result);
} catch (Exception ex) {
System.out.println( " Error " + ex.getMessage());
}
上面的代码片断中后面一部分是在取返回的参数,如果不需要可以不取。不取的话可能也就不需要取得到Process了。用这个方法可以运行windows中的exe或者bat文件。
在vb中也可以通过句柄调用其他程序,因此可以在一个程序中调用其他程序。