我在做一个软件系统的时候,这个系统要求:当用户把压缩包提交到服务端的时候,系统自动进行解压缩,自动解析其中的文件。
经过我个人分析,这个肯定要用到命令行,类似的运行命令Rar x 1337394240867.rar ./1337394240867 这样一个命令,前提是你的Rar必须配置到环境变量中了。
我把一些要运行的命令写到一个批处理文件中,假设这个文件在D盘下的D:\temp.bat,我发现直接用Runtime.getRuntime().exec(D:\temp.bat)基本上无法执行这批处理文件中的内容,即使是执行起来了也很慢。怎么办呢?在我搜集完相关资料后,发现你可以在Runtime中调用cmd,具体的命令为:Runtime.getRuntime().exec("cmd /c start /D\"D:\\\"" + temp.getName());当然,这个时候temp是在D盘下的。你会发现在cmd中运行这个批处理文件就超级快了~~