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

C++/CLI Discussion :

Ouvrir et ecrire dans un fichier txt


Sujet :

C++/CLI

  1. #1
    Membre très actif
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    254
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 254
    Par défaut Ouvrir et ecrire dans un fichier txt
    Bonjour, je cherche le moyen d'ouvrir un fichier txt avec un bouton et d'y écrire dedans avec un double clic sur un textBox.
    Le code suivant fonctionne en écriture mais à condition de fermer puis ré ouvrir le fichier créé.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    private: System::Void BtTxt_Click(System::Object^  sender, System::EventArgs^  e) {
     
    		 String^ fileName = "C:/Brouillon.txt";
    		 StreamReader^ SR = gcnew StreamReader(fileName);
    		 Process::Start(fileName);
    		 SR->Close();}
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    private: System::Void textBox2_DoubleClick(System::Object^  sender, System::EventArgs^  e) {
    		   String^ fileName = "C:/Brouillon.txt";
    		   StreamWriter^ sw = gcnew StreamWriter(fileName);
    		   sw->WriteLine(DateTime::Now);
    		   sw->WriteLine(textBox1->Text+"	"+textBox2->Text);
    		   sw->Close();	
    		 }

  2. #2
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 469
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 469
    Par défaut
    Tant qu'un handle de fichier est ouvert en mode exclusif (mode par défaut en écriture) sur le dit fichier, aucune autre ouverture du fichier ne peut s'effectuer. Que l'ouverture vient du process qui a déjà ouvert le fichier ou d'un autre.
    Le processus qui a ouvert le fichier doit utiliser le handle qu'il a reçu à l'ouverture, et uniquement celui-là. En .NET, le handle de fichier est stocké indirectement dans l'objet StreamWriter.
    Il faut donc libérer le handle de fichier avant de pouvoir faire d'autres choses sur le fichier si le StreamWriter ne permet pas de le faire.
    La méthode Close ou Dispose de StreamWriter, libère le handle de fichier sous-jacent.

    Pour pouvoir lire et écrire sur le même fichier, il faut que le handle de fichier soit partagé par le StreamWriter et le StreamReader (plutôt dangereux au demeurant).

    Regardez l'utilisation d'un FileStream dans l'exemple dans la page suivante:
    http://msdn.microsoft.com/en-us/libr...(v=vs.71).aspx

Discussions similaires

  1. Ouvrir et écrire dans un fichier .txt en T-SQL
    Par joul's dans le forum MS SQL Server
    Réponses: 11
    Dernier message: 27/10/2008, 21h04
  2. Ecrire dans un fichier txt en 4gl
    Par patriceguic dans le forum Informix
    Réponses: 2
    Dernier message: 07/05/2007, 20h44
  3. Ecrire dans un fichier .txt
    Par chabRRR dans le forum Langage
    Réponses: 3
    Dernier message: 13/03/2007, 19h30
  4. Ecrire dans un fichier .txt
    Par yinyann86 dans le forum Pascal
    Réponses: 17
    Dernier message: 24/11/2006, 13h36
  5. Ecrire dans un fichier txt sans en effacer le contenu
    Par cari dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 14/12/2005, 18h11

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