在java中,我们可以使用Runtime.getRuntime().excu();来调用bat文件,如果bat文件中有图形界面的话,可以使用这样写
Process pro=Runtime.getRuntime().excu();
pro.waitFor();
即可调用。
如我们写一个bat文件。
@echo off&setlocal enabledelayedexpansion
start explorer c:/windows/system32
pause>nul
那么将会使用图形界面打开c:/windows/system32
然而,有时我们的bat文件没有图形界面,我们有想看bat文件是否运行,那我们可以再process这里进行深入了。
因为Process中,我们可以进行流的读取,和发送,这样我们就可以进行相应的打印出来了。
如
@echo off&setlocal enabledelayedexpansion
for /f "delims= " %%i in ('help') do (
echo %%i
)
pause
这个bat文件将会返回所有help所得的结果。
我们想看结果时,可使用
InputStream is=pro.getInputStream();
然后再对流进行读取就可以了。