web-dev-qa-db-fra.com

Écrivez une chaîne dans un fichier texte et assurez-vous qu'il écrase toujours le contenu existant.

J'ai une chaîne avec un programme C # que je veux écrire dans un fichier et toujours écraser le contenu existant. Si le fichier n'existe pas, le programme doit créer un nouveau fichier au lieu de lancer une exception.

162
leora
System.IO.File.WriteAllText (@"D:\path.txt", contents);
  • Si le fichier existe, cela le remplace.
  • Si le fichier n'existe pas, cela le crée.
  • Assurez-vous que vous disposez des privilèges appropriés pour écrire sur le site, sinon vous obtiendrez une exception.
342
Hemant

Utilisez la méthode File.WriteAllText . Il crée le fichier s'il n'existe pas et le remplace s'il existe.

29
Guffa

En général, FileMode.Create est ce que vous recherchez.

1
Thomas Danecker

Si votre code ne nécessite pas que le fichier soit tronqué en premier, vous pouvez utiliser FileMode.OpenOrCreate pour ouvrir le flux de fichiers, qui créera le fichier s'il n'existe pas ou l'ouvrira le cas échéant. Vous pouvez utiliser le flux pour pointer au premier plan et commencer à écraser le fichier existant?

Je suppose que vous utilisez un flux ici, il existe d'autres moyens d'écrire un fichier.

0
Spence