AniProGuy2 Geschrieben 22. Juli 2017 Melden Share Geschrieben 22. Juli 2017 Hallo liebe Community, Ich habe schon seit längerem mit dem Problem zu kämpfen, dass ich eine .txt File nicht bearbeiten kann, nachdem ich sie erstellt habe, sofern ich beides in der selben Methode mache. Ich verstehe nicht genau warum, aber es kommt immer der Error "Sharing violation on path", wenn ich es versuche. Mein Code ist recht simpel: File.Create (path); StreamWriter currentClonkData = File.AppendText (path); currentClonkData.Close (); Weiß jemand von euch, was ich machen muss, um beides in einer Methode tun zu können? MfG, AniProGuy2 Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Zer0Cool Geschrieben 22. Juli 2017 Melden Share Geschrieben 22. Juli 2017 Wenn ein Prozeß eine Datei öffnet, dann erlangt er ein "Handle" auf diese Datei. Dieses Handle ist zumeist "exklusiv" und damit kann kein anderer Prozeß mehr in diese Datei schreiben. Wenn du mit "File.Create" arbeitest, bekommst du über diese Methode bereits ein FileStream zurück. Dieses FileStream besitzt dann dieses Handle. Wenn du AppendText aufrufst, dann versucht das System sich ein weiteres Handle zu holen und dann kommt es zu diesem Konflikt. Also über File.Create sich den FileStream geben lassen und dann damit den Text schreiben, oder nach Create den Stream wieder schließen und dir mit AppendText einen neuen Stream holen. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
AniProGuy2 Geschrieben 22. Juli 2017 Autor Melden Share Geschrieben 22. Juli 2017 Ok, danke für die Hilfe. Das werde ich direkt ausprobieren! Gibst immer super Hilfe! Danke dafür ^^ Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Recommended Posts
Archiviert
Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.