J'essaye de compresser et d'archiver tous les fichiers dans un dossier, en utilisant la classe Java Runtime. Mon extrait de code semble que ceci:Compresser et archiver les fichiers dans le dossier en utilisant Java Runtime
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());
}
Le code ci-dessus n'archive et compresser le fichier comme prévu, mais il crée un fichier myuserData2009-11-18.tar.bz2
dans le dossier « /home/amit/Documents/
».
également la sortie est
Exit value: 2.
Alors que si j'exécute la même commande de la ligne de commande, il donne le résultat attendu.
S'il vous plaît dites-moi ce que je manque.
Merci
Amit
Merci rsp. Mais le dossier contient de nombreux autres types de fichiers et je n'ai besoin d'archiver que les fichiers commençant par marketData. Les fichiers sont également exportés par FTP dans ce dossier et le nombre de fichiers varie. Il semble donc difficile d'utiliser la 1ère ou la 3ème méthode spécifiée par vous. Je vais essayer avec le 2ème. Pouvez-vous nous en dire un peu plus à ce sujet? Merci, – Amit
Cela a fonctionné Merci – Amit