2009-05-14 6 views
0

Lassen Sie mich umformulieren. Mein Beispiel war wahrscheinlich nicht gut. Beim Löschen eines Verzeichnisses können viele Dinge schief gehen. Eine Datei hat ein Attribut readonly, das Verzeichnis wird vom Windows Explorer geöffnet. Ich denke, dass alle von ihnen behandelt werden können - aber ich möchte es nicht alleine machen - gibt es einen Wrapper, der das mit einer einfachen API erledigt?Robustere Dateisystembibliothek in .net

Ich finde die Dateisystem-Operationen in System.IO unzureichend. Wenn beispielsweise eine Datei in einem Texteditor geöffnet wird, kann die Datei nicht gespeichert werden.

Ich fragte mich, ob es eine leistungsfähigere Implementierung des Dateisystems für .net?

Antwort

3

welcher Texteditor? Wie öffnest du die Datei zum Schreiben? Ich schreibe die ganze Zeit in die Protokolldatei und habe dieses Problem nicht.

Scheint ein bisschen unüberlegt, System.IO aus diesem Grund aufzugeben.

2

Es spielt keine Rolle, was Sie verwenden, Sie können nicht in eine Datei schreiben, die gesperrt ist.

Dies ist keine Einschränkung des .NET-Frameworks, so funktioniert das Dateisystem.

1

Fast alle System.IO-Aufrufe sind nur Wrapper für kernel32.dll. Die Aufzählungen sind über sind analog zu denen aus den pinvoked kernel32 diejenigen geschickt, so:

System.IO.File.Create(@"C:\test.txt",1024,FileOptions.Asynchronous) 

, die einen Filestream verwendet, verwendet kernel32 der Writefile