IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Fichier vérouillé en création


Sujet :

VB.NET

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    480
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 480
    Points : 357
    Points
    357
    Par défaut Fichier vérouillé en création
    Bonjour,

    J'ai un problème avec le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
            'ENREGISTREMENT DU FICHIER EN LOCAL
            ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
            Dim pathBalance As String = System.Configuration.ConfigurationManager.AppSettings("balance")
     
            '1. Si le répertoire de base n'existe pas on le crée
            If Not System.IO.Directory.Exists(pathBalance) Then
                System.IO.Directory.CreateDirectory(pathBalance)
            End If
     
            '2. Si le répertoire de la structure n'existe pas on le crée
            If Not System.IO.Directory.Exists(pathBalance & "/" & idStructure) Then
                System.IO.Directory.CreateDirectory(pathBalance & "/" & idStructure)
            End If
     
            '3. Création du fichier 
            If Not System.IO.File.Exists(pathBalance & "/" & idStructure & "/balance.txt") Then
                System.IO.File.Create(pathBalance & "/" & idStructure & "/balance.txt")
            End If
     
            Dim fs As System.IO.StreamWriter
            fs = New System.IO.StreamWriter(pathBalance & "/" & idStructure & "/balance.txt", False)
            fs.Write(Me.txtResultat.Text)
            fs.Close()
            fs.Dispose()
    Mais si mon fichier n'existe pas et qu'il est créé alors la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fs = New System.IO.StreamWriter(pathBalance & "/" & idStructure & "/balance.txt", False)
    plante avec l'erreur : le fichier est utilisé par un autre processus.

    Comment savoir libéré le fichier créer?
    Ou alors comment détecter la fin de la création du ficher?

    Ou tout autre solution qui résoudrait mon problème.

    Merci d'avance
    Arrêtez de poster des liens! Expliquez! (ça évite les erreur HTTP 404)

    L'homme est plus fort que la machine... ne renoncez jamais


  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    C'est parce que la méthode System.IO.File.Create crée ET ouvre le fichier, donc quand tu crées ton StreamWriter, ça plante parce que le fichier est déjà ouvert en écriture.
    En fait tu n'as pas besoin de créer le fichier explicitement : s'il n'existe pas il sera créé lors de la création du StreamWriter.

    D'où l'utilité de lire la doc...
    Elle contient les réponses à la plupart des questions posées sur le forum, d'ailleurs j'ai appris .NET presque exclusivement en lisant la doc...

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    480
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 480
    Points : 357
    Points
    357
    Par défaut
    Merci beaucoup pour ta réponse.

    Tu parles de quelle Doc? La MSDN?
    Arrêtez de poster des liens! Expliquez! (ça évite les erreur HTTP 404)

    L'homme est plus fort que la machine... ne renoncez jamais


  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Citation Envoyé par The eye Voir le message
    Tu parles de quelle Doc? La MSDN?
    Oui
    NB: La MSDN Express Library fournie avec les versions Express de Visual Studio est incomplète. Il vaut mieux télécharger la version complète (dispo gratuitement)

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    480
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 480
    Points : 357
    Points
    357
    Par défaut
    Ok merci.

    Ben écoutes, ça tombe bien j'ai justement un problème avec l'objet WebClient... donc je vais commencer par lire la doc et si je trouve alors je posterai
    Arrêtez de poster des liens! Expliquez! (ça évite les erreur HTTP 404)

    L'homme est plus fort que la machine... ne renoncez jamais


  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    480
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 480
    Points : 357
    Points
    357
    Par défaut
    Bon et bien la doc m'a pas beaucoup aidé ce coup-ci...

    Je vais devoir ouvrir une nouvelle discussion
    Arrêtez de poster des liens! Expliquez! (ça évite les erreur HTTP 404)

    L'homme est plus fort que la machine... ne renoncez jamais


Discussions similaires

  1. Réponses: 2
    Dernier message: 26/10/2012, 10h28
  2. [OpenOffice][Texte] Ouvrir un fichier "ott" sans création d'un nouveau document
    Par cpf2006 dans le forum OpenOffice & LibreOffice
    Réponses: 2
    Dernier message: 17/06/2008, 08h47
  3. Probleme casse fichier texte avec création table SAS
    Par pierre24 dans le forum SAS Base
    Réponses: 4
    Dernier message: 16/05/2008, 10h52
  4. [DOM4J] Fichier vérouillé après echec de parsing
    Par osopardo dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 26/10/2007, 17h50
  5. Recopie de fichiers :date de création du fichier perdue
    Par mugwump dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 30/08/2007, 16h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo