我正在嘗試使用Java運行時類壓縮和存檔文件夾中的所有文件。我的代碼片段看起來就象這樣:使用Java運行時壓縮和存檔文件夾中的文件
public static void compressFileRuntime() throws IOException, InterruptedException {
String date = Util.getDateAsString("yyyy-MM-dd");
Runtime rt = Runtime.getRuntime();
String archivedFile = "myuserData"+date+".tar.bz2";
String command = "tar --remove-files -cjvf "+archivedFile+" marketData*";
File f = new File("/home/amit/Documents/");
Process pr = rt.exec(command, null, f);
System.out.println("Exit value: "+pr.exitValue());
}
上面的代碼不存檔和壓縮文件如預期,雖然它創建文件夾「/home/amit/Documents/
」在文件myuserData2009-11-18.tar.bz2
。
另外的輸出是
Exit value: 2.
雖然我是否來自命令行執行相同的命令,它給出了預期的結果。
請告訴我我失蹤了。
感謝
阿米特
感謝rsp。 但該文件夾包含許多其他類型的文件,我只需要存檔以marketData開頭的文件。此外,文件通過FTP轉儲到該文件夾中,文件數量也不相同。所以使用你指定的第一種或第三種方法似乎很難。 我會嘗試第二個。你能否詳細說明一下。 謝謝, – Amit 2009-11-18 11:16:42
它的工作 謝謝 – Amit 2009-11-18 12:10:32