Bonjour,
J'ai besoin d'extraire des fichiers d'une archive, pour cela j'utilise libarchive, mais pas moyen de trouver comment extraire un fichier donné...
Merci pour votre aide!
Bonjour,
J'ai besoin d'extraire des fichiers d'une archive, pour cela j'utilise libarchive, mais pas moyen de trouver comment extraire un fichier donné...
Merci pour votre aide!
J'ai trouvé comment faire, je poste pour ceux que ça intéresse; dans la boucle qui liste les fichiers, il suffit de faire:
Merci archivemount!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 std::string filetoextract = "myfiletoextract"; while (archive_read_next_header(a, &entry) == ARCHIVE_OK) { std::cout << " file " << archive_entry_pathname(entry) << std::endl; if(filetoextract == archive_entry_pathname(entry)){ char *buff = new char[archive_entry_size(entry)]; archive_read_data(a, buff, archive_entry_size(entry)); FILE *tmp = fopen("tmp", "w"); fwrite(buff, archive_entry_size(entry), 1, tmp); fclose(tmp); delete[] buff; } }![]()
Partager