Problème de décompression de fichier zip- les fichiers restent ouverts
mohamed_bn
Messages postés47Date d'inscriptionjeudi 9 novembre 2000StatutMembreDernière intervention10 septembre 2010
-
5 mars 2005 à 10:00
belfdil_radouane
Messages postés1Date d'inscriptionmardi 14 mars 2006StatutMembreDernière intervention 2 novembre 2009
-
2 nov. 2009 à 15:26
med belhassen
j'ai utilisé ce petit programme que j'ai trouvé sur ce site dans mon application web. il permet de décompresser les fichiers zips.
mais le problème c'est que les fichiers décompressés restent inaccessibles en écriture. c'est à dire que je ne peut pas les éffacer jusquà sortir du formulaire web et attendre quelques minutes. j'ai utilisé ce programme dans mon application web qui permet à un client d'uploder un fichier zip puis elle la décompresse sur le serveur. et le client par la suite peut normalement éffacer les fichiers ou les déplacer. mais ce petit programme bloque mes fichiers extraites du zip. (apparament qu'il ne les fermes pas automatiquement malgré qu'on a fermé dans le code les flus ouverts de fichiers.
voici le corps de ce programme:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using ICSharpCode.SharpZipLib.Zip;
using System.IO;
namespace décompressionzipcs
{
/// <summary>
/// Summary description for WebForm1.
/// </summary>
public class WebForm1 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Button Button1;
private void Page_Load(object sender, System.EventArgs e)
{
// Put user code to initialize the page here
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.Button1.Click += new System.EventHandler(this.Button1_Click);
this.Load += new System.EventHandler(this.Page_Load);
si vous pouvez m'aider à resoudre ce problème n'hésiter à me répondre .
si vous connaisser une autre source qui traite la décompression d'un répertoire svp me la donner
A voir également:
Problème de décompression de fichier zip- les fichiers restent ouverts
belfdil_radouane
Messages postés1Date d'inscriptionmardi 14 mars 2006StatutMembreDernière intervention 2 novembre 2009 2 nov. 2009 à 15:26
Bonjour,
Vous avez un petit oublie car la fermiture du fichier se fais a chaque itération, du coup juste après la boucle :
while ((count = zis.Read(buffer,0,4096)) > 0) //4096
{
fos.Write(buffer,0,count);
}
on doit avoir :
fos.Close()