Schreiben Sie eine Zeichenfolge in eine Textdatei und stellen Sie sicher, dass der vorhandene Inhalt immer überschrieben wird.

180

Ich habe eine Zeichenfolge mit einem C # -Programm, die ich in eine Datei schreiben und den vorhandenen Inhalt immer überschreiben möchte. Wenn die Datei nicht vorhanden ist, sollte das Programm eine neue Datei erstellen, anstatt eine Ausnahme auszulösen.

Leora
quelle

Antworten:

370
System.IO.File.WriteAllText (@"D:\path.txt", contents);
  • Wenn die Datei vorhanden ist, wird sie überschrieben.
  • Wenn die Datei nicht vorhanden ist, wird sie erstellt.
  • Stellen Sie sicher, dass Sie über die entsprechenden Berechtigungen zum Schreiben am Speicherort verfügen. Andernfalls wird eine Ausnahme angezeigt.
Hemant
quelle
32

Verwenden Sie die File.WriteAllTextMethode. Es erstellt die Datei, wenn sie nicht vorhanden ist, und überschreibt sie, wenn sie vorhanden ist.

Guffa
quelle
Ah. so einfach und hilfreich.
Zach Smith
2

Im Allgemeinen FileMode.Createist es das , wonach Sie suchen.

Thomas Danecker
quelle
Er bittet um eine vorhandene Datei, die überschrieben werden soll
sino
0

Wenn Ihr Code nicht erfordert, dass die Datei zuerst abgeschnitten wird, können Sie den Dateistream mit FileMode.OpenOrCreate öffnen, wodurch die Datei erstellt wird, wenn sie nicht vorhanden ist, oder wenn dies der Fall ist. Sie können den Stream verwenden, um nach vorne zu zeigen und die vorhandene Datei zu überschreiben.

Ich gehe davon aus, dass Sie hier Streams verwenden. Es gibt andere Möglichkeiten, eine Datei zu schreiben.

Spence
quelle