Création d'un fichier Zip à l'aide de SharpZipLib
J'ai besoin de combiner 3 fichiers sur 1 fichier zip et de le rendre disponible au téléchargement pour l'utilisateur. Je suis en mesure de réaliser mon exigence à l'exception d'une chose: c'zip les fichiers dans les sous-dossiers.
Par exemple, mes fichiers sont situés comme suit:
C:\TTCG\WebSites\Health\ABC.CSV
C:\TTCG\WebSites\Health\XYZ.CSV
C:\TTCG\WebSites\Health23.CSV
Mais dans le fichier zip, zip les fichiers dans le dossier à l'aide de "TTCG\Sites\Santé\" le chemin d'accès. Veuillez voir le fichier joint.
Je ne veux pas les dossiers dans le chemin. Je veux juste 3 fichiers dans le fichier zip sans dossiers. Comment puis-je y parvenir?
Mes codes pour générer le fichier zip est comme ci-dessous:
ZipFile z = ZipFile.Create(Server.MapPath("~" + @"\Accident.zip"));
//initialize the file so that it can accept updates
z.BeginUpdate();
//add the file to the zip file
z.Add(Server.MapPath("~" + @"\ABC.csv"));
z.Add(Server.MapPath("~" + @"\XYZ.csv"));
z.Add(Server.MapPath("~" + @"3.csv"));
//commit the update once we are done
z.CommitUpdate();
//close the file
z.Close();
source d'informationauteur TTCG
Vous devez vous connecter pour publier un commentaire.
Basé sur la FAQ, vous avez pour dépouiller le chemin d'accès au dossier manuellement:
La FAQ peut être trouvé ici.
Il semble être une limitation de la bibliothèque. Espérons que cette aide!
Si vous avez vos fichiers dans un FileSystemInfo, vous pouvez utiliser:
z.Add(file.FullName, Path.GetFileName(file.FullName));
Cela va ajouter vos fichiers dans le répertoire racine de votre zip.