WxWidgets || Kompresja oraz dekompresja pliku

0

Cześć ,próbuję napisać program do kompresji i dekompresji plików przy użyciu WxWidgets. Napisałem GUI używając WxSmith.

Jaką bibliotekę oprogramowania polecacie? Zlib? Czy możecie mi podać przykładowy kod kompresji plików?

Chciałbym móc wybrać plik obiektem wxFilePicker i katalog docelowy obiektem wxDirPicker.

Sprawdziłem dokumentację i znalazłem niestety tylko przykłady kompresji stringów.

Dzięki

1
  1. Czy chcesz sam napisać kompresję plików?
  2. Czy chcesz po prostu użyć już gotowego narzędzia i po prostu zrobić nakładkę. np. wołasz 7zip z cmd https://www.dotnetperls.com/7-zip-examples
  3. Możesz użyć czegoś w rodzaju libzip. Przykłady są na necie.
0
  1. Muszę napisać sam.
  2. Nie mogę, jedynie biblioteki
  3. Użyłem gotowych funkcji wxwidgets

Kod:

wxFFileOutputStream out( DirPickerCtrl1->GetPath()+".zip" );
    wxZipOutputStream zip(out);

W jaki sposób mogę dodać pliki do tego archiwum używając wxFilePicker?

1

Jeśli masz sam bez bibliotek to zacznij od hasła
"huffman coding compression c++"
libzip przykład
https://gist.github.com/clalancette/bb5069a09c609e2d33c9858fcc6e170e

WxWidgets potraktuj jako Gui i tyle. Ogólnie poczytaj o tym co pisałem wyżej czyli libzip czy huffman

0

Bardzo dziękuję za odpowiedź, w dokumentacji widnieje tylko kompresja znaków, gdzie mogę znaleźć przykład kompresji plików?

0

W jaki sposób mogę dodać pliki do tego archiwum używając wxFilePicker?

Spróbuj dla każdego pliku wywołać wxZipOutputStream::PutNextEntry i następnie wxZipOutputStream::Write ze strumieniem wejściowym danego pliku w parametrze.

1 użytkowników online, w tym zalogowanych: 0, gości: 1