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# Discussion :

Ecriture dans un fichier sans l'écraser


Sujet :

C#

  1. #1
    Membre à l'essai
    Inscrit en
    Mars 2009
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 32
    Points : 24
    Points
    24
    Par défaut Ecriture dans un fichier sans l'écraser
    bonjour à tous,

    Je voudrais savoir si y'a un moyen d'inserer au mileu d'un fichier texte des lignes sans avoir a écraser tout le fichier en cours en utilisant StreamWriter?


  2. #2
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    On peut pas (en tout cas pas Windows, et pas Linux que je sache) écrire dans un fichier en insertion. Ta seule alternative est donc de réécrire tout le fichier. Pour cela tu as plusieurs options. La plus simple avec un petit fichier texte c'est de copier son contenu dans un string, écrire le début du fichier, écrire ce que l'on veux insérer, et y rajouter la fin.

  3. #3
    Membre à l'essai
    Inscrit en
    Mars 2009
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 32
    Points : 24
    Points
    24
    Par défaut
    Merci bcp pour la réponse

    Mais en faite ca s'agit d'un grand fichier de l'ordre de 5 à 10 Mo . c k je veux en faite c'est d'éviter la réecriture de tout le fichier.

  4. #4
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    On ne peut pas insérer des données directement dans un flux de données, c'est pas possible, tu sera obligé de tout réécrire d'une manière ou d'une autre.
    Après si ça fait 5-10 Mo la meilleur solution n'est peut être pas de tout charger en mémoire mais tu peux par exemple ouvrir le fichier, lire la fin du fichier et la réécrire quelques octets plus loin, juste pour que tu ai la place d'écrire ce que tu veux au milieu.

  5. #5
    Membre à l'essai
    Inscrit en
    Mars 2009
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 32
    Points : 24
    Points
    24
    Par défaut
    Merci pour la réponse, j'ai essayé de savoir si y'a des composants native dans le framework .NET capable de faire ca, mnt je suis persuadé que je dois passer en dure ... esperenat que le .NET 4.0 fera l'affaire prochainement

Discussions similaires

  1. Réponses: 2
    Dernier message: 04/03/2011, 09h20
  2. Réponses: 1
    Dernier message: 01/06/2009, 05h12
  3. écrire dans un fichier sans l'écraser
    Par radahm dans le forum Import/Export
    Réponses: 3
    Dernier message: 15/05/2009, 14h52
  4. Ajout dans un fichier sans écraser
    Par Lazypanda dans le forum Débuter
    Réponses: 4
    Dernier message: 06/02/2009, 16h41
  5. Ecriture dans un fichier sans ecraser le contenu
    Par Mo_Poly dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 07/03/2007, 23h49

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