Używam SharpZipLib w projekcie i zastanawiam się, czy można go wykorzystać do obejrzenia pliku zip, a jeśli jeden z plików ma zmodyfikowane dane w zakresie Poszukuję następnie, aby wybrać ten plik i skopiować go do nowego katalogu? Czy ktoś wie, że to jest możliwe?SharpZipLib Sprawdzanie i wybieranie zawartości pliku ZIP
6
A
Odpowiedz
8
Tak, możliwe jest wyliczenie plików pliku zip przy użyciu SharpZipLib. Możesz także wybrać pliki z pliku zip i skopiować te pliki do katalogu na dysku.
Oto mały przykład:
using (var fs = new FileStream(@"c:\temp\test.zip", FileMode.Open, FileAccess.Read))
{
using (var zf = new ZipFile(fs))
{
foreach (ZipEntry ze in zf)
{
if (ze.IsDirectory)
continue;
Console.Out.WriteLine(ze.Name);
using (Stream s = zf.GetInputStream(ze))
{
byte[] buf = new byte[4096];
// Analyze file in memory using MemoryStream.
using (MemoryStream ms = new MemoryStream())
{
StreamUtils.Copy(s, ms, buf);
}
// Uncomment the following lines to store the file
// on disk.
/*using (FileStream fs = File.Create(@"c:\temp\uncompress_" + ze.Name))
{
StreamUtils.Copy(s, fs, buf);
}*/
}
}
}
}
W powyższym przykładzie użyć MemoryStream
przechowywać ZipEntry
pamięci (do dalszej analizy). Można również zapisać na dysku ZipEntry
(jeśli spełnia on określone kryteria).
Hope, to pomaga.
+0
To jest dokładnie to, czego szukałem, bardzo doceniane !! – DukeOfMarmalade
Powiązane problemy
- 1. SharpZipLib: Kompresowanie pojedynczego pliku do pojedynczego skompresowanego pliku
- 2. Korzystanie SharpZipLib rozpakować konkretne pliki?
- 3. Wyodrębnianie zawartości pliku ZIP do określonego katalogu w Pythonie 2.7
- 4. Wybieranie rozmiaru pliku System.Drawing.Icon?
- 5. Przeczytaj plik zip wewnątrz pliku zip
- 6. Tworzenie pliku .zip
- 7. Sprawdzanie poprawności wielu typów zawartości za pomocą spinacza i szyn
- 8. Sprawdzanie zawartości tablicy w debugerze Xcode
- 9. Sprawdzanie poprawności zawartości std :: initializer_list podczas kompilacji
- 10. clojure: rozpakowywanie pliku zip przechowywanego jako zasób
- 11. Python, napisz w pliku zip do pliku
- 12. Rozpakowywanie pliku zip w Django
- 13. Tworzenie pliku zip z ionic.zip
- 14. Wyodrębnianie pliku zip do pamięci?
- 15. Python zip wielu katalogów w jednym pliku zip
- 16. szyny 3 - LoadError (nie można załadować takiego pliku - zip/zip)
- 17. Automatyczne wybieranie rozmiaru bufora dla pliku I/O
- 18. Wysyłanie deskryptora pliku przez gniazdo domeny UNIX i wybieranie()
- 19. Sprawdzanie pliku Groovy
- 20. Wybieranie i aktualizowanie w jednej przechowywanej procedurze
- 21. Utwórz archiwum .tar.gz bez struktury folderów za pomocą SharpZipLib
- 22. Sprawdzanie uprawnień właściciela pliku
- 23. Sprawdzanie poprawności pliku WADL
- 24. Polecenie 7-Zip do tworzenia i wypakowywania pliku ZIP chronionego hasłem w systemie Windows?
- 25. jaki sposób można wyszukiwać pliki i zip je w jednym pliku zip
- 26. Pamięć archiwum zip php, rozmiar i maksymalny rozmiar pliku
- 27. Tworzenie pliku zip dystrybucja ze sprężyną Boot i Gradle
- 28. sendfile nie kopiuje zawartości pliku
- 29. Odczytywanie zawartości pliku w sharpsvn
- 30. VCLZip: "Wirtualne" katalogi w pliku zip
Jestem pewien, że jest to możliwe. Musiałbyś otworzyć archiwum i przyjrzeć się zawartości zbioru plików. W zależności od tego, czy informacje o ostatniej modyfikacji zostaną upublicznione, ustalą, czy będziesz w stanie zrobić wszystko inne. Nie wiem, dlaczego nie zostanie upubliczniony, biblioteka SharpZibLib opiera się na tym, więc powinna również na to pozwolić. W przeciwnym razie zawsze istnieją inne rozwiązania, które by na to pozwoliły. –