1
我一直在试图解压一个.tbz文件,而没有在java应用程序中取得很多成功。我现在决定尝试命令行来完成这项工作,目前它没有通过任何错误,但它也没有解压文件。任何人都可以看到这个问题?java exec试图解压文件
String[] cmd = { "tar", "-xjf", "/var/tmp/filename.tbz"};
Process p =Runtime.getRuntime().exec(cmd, null);
编辑,这个工程:
List<String> commands = new ArrayList<String>();
commands.add("tar");
commands.add("-xvjf");
commands.add("/var/tmp/filename.tbz");
ProcessBuilder pb = new ProcessBuilder(commands);
Process p = pb.start();
BufferedReader reader = new BufferedReader(new InputStreamReader(
p.getInputStream()));
String readline;
while ((readline = reader.readLine()) != null) {
System.out.println(readline);
}
我改变了它,仍然没有错误,没有输出,我看着processbuilder,是第一部分需要“焦油”,其余的字符串? – caro
这不会产生任何输出。要阅读输出结果,你需要更多的工作。但我给你的代码应该提取文件。 – janos
要获得输出,请参阅本教程:http://www.mkyong.com/java/how-to-execute-shell-command-from-java/ – janos