我使用标准 VB.NET 库来提取和压缩文件。它也可以工作,但是当我必须提取并且文件已经存在时,问题就出现了。
我使用的代码
Imports:
Imports System.IO.Compression
崩溃时我调用的方法
ZipFile.ExtractToDirectory(archivedir, BaseDir)
archivedir 和 BaseDir 也已设置,事实上,如果没有要覆盖的文件,它就可以工作。当有问题的时候,问题就来了。
如何在不使用第三方库的情况下覆盖提取中的文件?
(请注意,我使用 System.IO. Compression 和 System.IO. Compression. Filesystem 作为参考)
由于文件位于多个已存在文件的文件夹中,因此我会避免手动
IO.File.Delete(..)
Use 提取到文件 http://msdn.microsoft.com/en-us/library/hh485718.aspx将 overwrite 设置为 true 以覆盖与目标文件同名的现有文件
Dim zipPath As String = "c:\example\start.zip"
Dim extractPath As String = "c:\example\extract"
Using archive As ZipArchive = ZipFile.OpenRead(zipPath)
For Each entry As ZipArchiveEntry In archive.Entries
entry.ExtractToFile(Path.Combine(extractPath, entry.FullName), True)
Next
End Using
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)