Ok,SharpZipLib ~ Comment extraire des fichiers spécifiques d'un zip
J'ai une liste de fichiers (objets SourceFile qui contiennent juste le nom de fichier uniquement) je veux tirer les fichiers spécifiques d'un zip et de les vider dans un répertoire temporaire afin que je puisse les distribuer plus tard.
je suis venu avec, mais je ne suis pas sûr sur la façon de procéder suivante ..
private List<string> ExtractSelectedFiles()
{
List<SourceFile> zipFilePaths = new List<SourceFile>();
List<string> tempFilePaths = new List<string>();
if (!File.Exists(this.txtSourceSVNBuildPackage.Text)) { return tempFilePaths; };
FileStream zipFileStream = File.OpenRead(this.txtSourceSVNBuildPackage.Text);
ZipInputStream inStream = new ZipInputStream(zipFileStream);
foreach (SourceFile currentFile in _selectedSourceFiles)
{
bool getNextEntry = true;
while (getNextEntry)
{
ZipEntry entry = inStream.GetNextEntry();
getNextEntry = (entry != null);
if (getNextEntry)
{
if (fileType == ".dll")
{
if (sourcefile.Name == Path.GetFileName(entry.Name))
{
//Extract file into a temp directory somewhere
//tempFilePaths.Add("extractedfilepath")
}
}
}
}
}
return tempFilePaths;
}
Pour votre information:
public class SourceFile
{
public string Name { get; set; } //ex. name = "Fred.dll"
}