Ich verwende das StreamWriter-Objekt, um entweder in eine Datei zu schreiben, die vom Konstruktor erstellt wird oder bereits vorhanden ist. Wenn die Datei existiert, hängt sie Daten an. Wenn nicht, sollte es eine Datei erstellen und dann auch Daten anhängen. Das Problem besteht darin, dass der StreamWriter-Konstruktor beim Erstellen der Datei die Datei erstellt, jedoch keine Daten in die Datei schreibt.StreamWriter - An erstellte Datei nicht angehängt
bool fileExists = File.Exists(filePath);
using (StreamWriter writer = new StreamWriter(filePath, true))
{
if (!fileExists)
{
writer.WriteLine("start");
}
writer.WriteLine("data");
}
EDIT: Danke für die Antworten. Der using-Block sorgt dafür, dass der Writer geschlossen wird. Was andere Leute sagen, es funktioniert für sie, gibt es irgendwelche Informationen, die ich Ihnen geben kann, um das Problem weiter zu diagnostizieren? Die Datei ist über ein Netzwerk verteilt. Könnte das ein potenzielles Problem sein? Intermittierend erhalte ich die Fehler "Ich konnte keinen Teil des Pfades finden ..." und "Der angegebene Netzwerkname ist nicht mehr verfügbar."
Funktioniert für mich. - – weiqure
Ihr Code funktioniert einwandfrei auf meinem Rechner. –
Funktioniert auch für mich ... @Dan, versuch es nochmal und check, vielleicht hast du beim ersten Lauf etwas verpasst? Die using-Anweisung sollte sich um das Schließen und Spülen kümmern ... –