从多份rar文件c#中获取卷文件>> [

问题描述 投票:1回答:1
我在同一文件夹中有多部分的RAR文件,我想检查RAR的所有部分是否都存在。我正在使用SharpCompress v0.24,这是我的代码:

using (var archive = RarArchive.Open("D:/Ontology tool.part1.rar")) { foreach (RarVolume vol in archive.Volumes) { MessageBox.Show(vol.IsMultiVolume + " \n"+ vol.IsFirstVolume+"\n"+ vol.IsSolidArchive); } }

但是我无法获得卷的完整文件名。然后,我使用SevenZipSharp v 0.64和7z.dll版本19,这是我的代码:

using (var extractor = new SevenZipExtractor("D:/Ontology tool.part1.rar")) { MessageBox.Show(extractor.VolumeFileNames[0]+""); }

但是后来我得到了错误:

无效的档案打开/读取错误!是否加密和错误提供密码了吗?如果您的档案是异国情调的档案,那是SevenZipSharp可能没有格式签名,因此误认为是TAR

注意,WinRAR程序似乎改变了RAR文件格式,因为我创建了5.71版的RAR文件,当我尝试使用旧的WinRAR版本打开它时,它无法正常打开,我的意思是文件格式不正确。

同样适用于SevenZipSharp。如果我打开自2014年以来创建的旧RAR文件,则可以打开,但是当我打开使用WinRAR v 5.71创建的RAR文件时,会出现此错误。

所以现在如何获取多部分RAR文件的所有部分文件名?

感谢您的帮助。

我在同一文件夹中有多部分的RAR文件,我想检查RAR的所有部分是否都存在。我正在使用SharpCompress v0.24,这是我的代码:使用(var archive = RarArchive.Open(“ D:/ Ontology ...

c# 7zip rar sevenzipsharp sharpcompress
1个回答
0
投票
我最终使用winrar.exe,发送命令来测试文件,如下所示:
© www.soinside.com 2019 - 2024. All rights reserved.