Używam standardowych bibliotek VB.NET do wyodrębniania i kompresowania plików. Działa również, ale problem pojawia się, gdy muszę wyodrębnić i pliki już istnieją.System.IO.Compression i ZipFile - wypakuj i nadpisaj
Kod używam
Import:
Imports System.IO.Compression
Metoda Zadzwonię kiedy się zawiesi
ZipFile.ExtractToDirectory(archivedir, BaseDir)
archivedir i basedir są ustawione, a także, w rzeczywistości to działa, jeśli nie ma żadnych plików nadpisać. Problem pojawia się dokładnie wtedy, gdy są.
Jak mogę nadpisać pliki w ekstrakcji bez użycia bibliotek thirdy-part?
(Uwaga używam jako odniesienia System.IO.Compression i System.IO.Compression.Filesystem)
Ponieważ pliki iść w wielu folderach mający już nieistniejących plików Chciałbym uniknąć ręcznego
IO.File.Delete(..)
Wydaje się działać lepiej, ale teraz nie działa w przypadku głupich plików systemowych, takich jak "Thumbs.db", które powodują awarię wykonywania i nadpisywania. Jakieś pomysły? – user1714647
Inna kwestia: wydaje się, że plik nie jest kopiowany, jeśli folder, który musi je zawierać, nie istnieje. – user1714647
Proponuję użyć niestandardowej logiki zip i usunąć wszystkie niechciane pliki, takie jak "Thumbs.db"; dla drugiego użyj kolejnego kodu If IO.Directory.Exists (path) = False Then IO.Directory.CreateDirectory (path) – volody