Effacer le contenu du fichier.txt

suethi75 Messages postés 101 Date d'inscription mercredi 5 novembre 2008 Statut Membre Dernière intervention 31 août 2009 - 29 déc. 2008 à 14:56
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 - 16 janv. 2022 à 19:25
Bonjour,

Je souhaiterai effacer le contenu d'un fichier.txt afin de pouvoir le remplir après. Comment procède t-on?

Merci pour votre aide.

3 réponses

cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
Modifié le 16 janv. 2022 à 18:17
Salut,

La plupart des types utilisés pour l'accès en écriture aux fichiers permettent de tronquer ou non le contenu de celui ci, que ce soit par un booléen "append" (à spécifier à false donc) dans le cas de StreamWriter (par exemple) ou via une valeur de l'énumération FileMode (en l'occurence Create ou Truncate) dans le cas de FileStream.
1
billou_13 Messages postés 860 Date d'inscription jeudi 4 mars 2004 Statut Membre Dernière intervention 19 août 2014 29
Modifié le 16 janv. 2022 à 18:18
Bonjour,

Une petite proposition de ma part. Pourquoi ne pas ouvrir le flux d'écriture en spécifiant le fait que tu veux écraser le fichier.
A voir : Constructeur de la classe StreamWriter => https://docs.microsoft.com/fr-fr/dotnet/api/system.io.streamwriter.-ctor?redirectedfrom=MSDN&view=net-6.0

StreamWriter writer = new StreamWriter(@"C:\TEMP\test.txt", false);


Bonne journée,

Billou_13
Bask En Force

--------------------------------------------------------------------
Connaître la réponse est une chose, savoir pourquoi en est une autre
---------------------
1
Merci monsieur
0
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
Modifié le 17 janv. 2022 à 10:03
Si tu veux écrire un bloc de texte d'un coup, avec .NET il y a aussi des méthodes directes :
System.IO.File.WriteAllText (une chaine complète avec son contenu intégral)
System.IO.File.WriteAllLines (Un tableau de chaine avec l'ajout automatique du retour à la ligne)
System.IO.File.WritaAllBytes (Écriture d'un tableau d'octet directement dans le fichier)

Pour l'ajout tu as aussi System.IO.File.AppendText.

0
Rejoignez-nous