File Klasse
Methoden der Klasse File
| Methode | Rückgabewert | Beschreibung |
|---|---|---|
| Create | FileStream | Erstellt eine neue Datei oder überschreibt eine vorhandene Datei mit dem angegebenen Dateinamen |
| Delete | void | Löscht die angegebene Datei |
| Exists | bool | Gibt an, ob die angegebene Datei vorhanden ist |
| GetAttributes | FileAttributes | Ruft die Attribute für die angegebene Datei oder das Verzeichnis ab |
| GetCreationTime | DateTime | Ruft die Zeit ab, zu der die angegebene Datei oder das Verzeichnis erstellt wurde |
| GetLastAccessTime | DateTime | Ruft die Zeit ab, zu der die angegebene Datei oder das Verzeichnis zuletzt zugegriffen wurde |
| GetLastWriteTime | DateTime | Ruft die Zeit ab, zu der die angegebene Datei oder das Verzeichnis zuletzt geschrieben wurde |
| Move | void | Verschiebt eine vorhandene Datei oder einen Ordner und legt dabei den neuen Dateinamen oder Pfad fest |
| Open | FileStream | Öffnet eine vorhandene Datei oder erstellt eine neue Datei und gibt einen FileStream zurück |
| ReadAllBytes | byte[] | Liest alle Bytes aus der angegebenen Datei |
| ReadAllLines | string[] | Liest alle Zeilen aus der angegebenen Datei |
| ReadAllText | string | Liest den gesamten Text aus der angegebenen Datei |
| WriteAllBytes | void | Schreibt die angegebenen Bytes in die angegebene Datei |
| WriteAllLines | void | Schreibt die angegebenen Zeilen in die angegebene Datei |
| WriteAllText | void | Schreibt den angegebenen Text in die angegebene Datei |
Beispiele für die Methoden Copy, Delete und Move der Klasse File im System.IO Namespace:
Copy-File
string sourceFile = @"C:\Temp\file.txt";
string destinationFile = @"C:\Temp\file_copy.txt";
File.Copy(sourceFile, destinationFile);
Delete-File
string filePath = @"C:\Temp\file.txt";
File.Delete(filePath);
Move-File
string sourceFile = @"C:\Temp\file.txt";
string destinationFile = @"C:\Temp\archive\file.txt";
File.Move(sourceFile, destinationFile);
Open-File
Die Methode mit den meisten Übergabeparameter von der Methode Open besitzt vier Parameter.
FileStream fileStream = File.Open("example.txt", FileMode.Open, FileAccess.Read, FileShare.None);
FileMode Konstanten
| Konstante | Beschreibung |
|---|---|
| Create | Erstellt eine neue Datei. Falls die Datei bereits existiert, wird sie überschrieben. |
| CreateNew | Erstellt eine neue Datei. Falls die Datei bereits existiert, wird eine IOException ausgelöst. |
| Open | Öffnet eine vorhandene Datei. Falls die Datei nicht existiert, wird eine FileNotFoundException ausgelöst. |
| OpenOrCreate | Öffnet eine vorhandene Datei. Falls die Datei nicht existiert, wird sie erstellt. |
| Truncate | Öffnet eine vorhandene Datei und schneidet sie auf die angegebene Länge. Falls die Datei nicht existiert, wird eine FileNotFoundException ausgelöst. |
| Append | Öffnet eine vorhandene Datei und setzt den Schreibzeiger ans Ende der Datei. Falls die Datei nicht existiert, wird sie erstellt. |
FileAccess Konstanten
| Konstante | Beschreibung |
|---|---|
| Read | Zugriff zum Lesen von Dateien |
| Write | Zugriff zum Schreiben von Dateien |
| ReadWrite | Zugriff zum Lesen und Schreiben von Dateien |
FileShare Konstanten
Entschuldigung, hier ist die Tabelle mit der ersten Zeile nicht hervorgehoben:
| Konstante | Beschreibung |
|---|---|
| None | Die Datei kann nicht gemeinsam genutzt werden. |
| Read | Nur Lesezugriffe auf die Datei sind möglich. |
| Write | Nur Schreibzugriffe auf die Datei sind möglich. |
| ReadWrite | Lese- und Schreibzugriffe auf die Datei sind möglich. |
| Delete | Der Zugriff auf die Datei ist eingeschränkt, damit sie gelöscht werden kann. |
| Inheritable | Ermöglicht das Öffnen von Dateien mit ererbten Zugriffsrechten. |
Einfaches Lesen von Dateien
Diese Methoden lesen den Inhalt einer Datei auf unterschiedliche Weise in den Speicher und geben ihn zurück. ReadAllBytes liest den gesamten Inhalt einer Datei als Byte-Array, ReadAllLines liest jede Zeile einer Datei als separaten String in einem String-Array und ReadAllText liest den gesamten Inhalt einer Datei als String.
byte[] bytes = File.ReadAllBytes("path/to/file.txt");
string[] lines = File.ReadAllLines("path/to/file.txt");
string text = File.ReadAllText("path/to/file.txt");
Einfaches Schreiben von Dateien
Analog zum Lesen gibt es die entsprechenden Methoden zum Schreiben.
byte[] binaryData = new byte[] { 0x41, 0x42, 0x43 };
File.WriteAllBytes("binaryfile.bin", binaryData);
string textData = "Hello, world!";
File.WriteAllText("textfile.txt", textData);
string[] lines = new string[] { "Line 1", "Line 2", "Line 3" };
File.WriteAllLines("linesfile.txt", lines);