C # verfügt über eine Vielzahl von Dateioperationen. Diese Vorgänge umfassen das Öffnen einer Datei, das Lesen oder Schreiben in eine Datei. Es kann Fälle geben, in denen Sie direkt mit Dateien arbeiten möchten. In diesem Fall würden Sie die in C # verfügbaren Dateivorgänge verwenden. Einige der grundlegenden Dateivorgänge sind unten aufgeführt.
- Lesen - Diese Operation ist die grundlegende Leseoperation, bei der Daten aus einer Datei gelesen werden.
- Schreiben - Diese Operation ist die grundlegende Schreiboperation, bei der Daten in eine Datei geschrieben werden. Standardmäßig werden alle vorhandenen Inhalte aus der Datei entfernt und neue Inhalte geschrieben.
- Anhängen - Bei diesem Vorgang werden auch Informationen in eine Datei geschrieben. Der einzige Unterschied besteht darin, dass die vorhandenen Daten in einer Datei nicht überschrieben werden. Die neu zu schreibenden Daten werden am Ende der Datei hinzugefügt.
In diesem Tutorial lernen Sie:
- Datei existiert
- File.ReadAlllines
- File.ReadAllText
- File.Copy
- File.Delete
Grundlagen E / A-Befehle
C # und .Net können mit Hilfe mehrerer Datei-E / A-Befehle mit Dateien arbeiten. Schauen wir uns einige dieser Befehle an. In unserem Beispiel wird davon ausgegangen, dass sich auf dem Laufwerk D eine Datei mit dem Namen Example.txt befindet.
Die Datei ist eine einfache Textdatei und hat 2 Zeilen, wie unten gezeigt
- Guru99 - .Net
- Guru99 -C #
In unserem Beispiel erstellen wir eine einfache Konsolenanwendung und arbeiten mit unseren Datei-E / A-Befehlen. Die Konsolenanwendung ist die grundlegende, die im vorherigen Lernprogramm erstellt wurde. In der Konsolenanwendung wird der gesamte Code in die Datei Program.cs geschrieben.
Datei existiert
Mit der Methode "Datei vorhanden" wird überprüft, ob eine bestimmte Datei vorhanden ist. Schauen wir uns nun den Code an, mit dem überprüft werden kann, ob unsere Example.txt-Datei vorhanden ist oder nicht. Geben Sie den folgenden Code in die Datei program.cs ein.
using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DemoApplication{class Tutorial{static void Main(string[] args){String path = @"D:\Example.txt";if (File.Exists(path)){Console.WriteLine("File Exists");}Console.ReadKey();}}}
Code Erläuterung: -
- Zuerst setzen wir eine Stringvariable mit dem Pfad zu unserer Example.txt-Datei.
- Als Nächstes verwenden wir die File.Exists-Methode, um zu überprüfen, ob die Datei vorhanden ist oder nicht. Wenn die Datei vorhanden ist, wird ein wahrer Wert zurückgegeben.
- Wenn wir einen wahren Wert erhalten und die Datei existiert, schreiben wir die Meldung "File Exists" in die Konsole.
Wenn der obige Code festgelegt ist und das Projekt mit Visual Studio ausgeführt wird, erhalten Sie die folgende Ausgabe.
Ausgabe:-
Anhand der obigen Ausgabe können Sie erkennen, dass der Befehl File.Exists erfolgreich ausgeführt wurde und die richtige Meldung im Konsolenfenster angezeigt wurde.
File.ReadAlllines
Die Methode wird verwendet, um alle Zeilen einzeln in einer Datei zu lesen. Die Zeilen werden dann in einer String-Array-Variablen gespeichert. Schauen wir uns ein Beispiel an. Geben Sie den folgenden Code in die Datei program.cs ein.
using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DemoApplication{class Tutorial{static void Main(string[] args){String path = @"D:\Example.txt";String[] lines;lines = File.ReadAllLines(path);Console.WriteLine(lines[0]);Console.WriteLine(lines[1]);Console.ReadKey();}}}
Code Erläuterung: -
- Zuerst deklarieren wir eine String-Array-Variable. Dies wird verwendet, um das Ergebnis zu speichern, das von der File.ReadAllLines-Methode zurückgegeben wird.
- Als Nächstes verwenden wir die File.ReadAllLines-Methode, um alle Zeilen aus unserer Textdatei zu lesen. Das Ergebnis wird dann an die Zeilenvariable übergeben.
- Da wir wissen, dass unsere Datei nur 2 Zeilen enthält, können wir über den Befehl lines [0] und lines [1] auf den Wert der Array-Variablen zugreifen.
Wenn der obige Code festgelegt ist und das Projekt mit Visual Studio ausgeführt wird, erhalten Sie die folgende Ausgabe.
Ausgabe:-
Aus der Ausgabe können Sie ersehen, dass der Befehl File.ReadAllLines beide Zeilen aus unserer Datei Example.txt zurückgegeben hat
File.ReadAllText
Diese Methode wird verwendet, um alle Zeilen in einer Datei gleichzeitig zu lesen. Die Zeilen werden dann in einer Zeichenfolgenvariablen gespeichert. Schauen wir uns ein Beispiel an. Geben Sie den folgenden Code in die Datei program.cs ein.
using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DemoApplication{class Tutorial{static void Main(string[] args){String path = @"D:\Example.txt";String lines;lines = File.ReadAllText(path);Console.WriteLine(lines);Console.ReadKey();}}}
Code Erläuterung: -
- Zuerst deklarieren wir eine Stringvariable namens Lines. Dies wird verwendet, um das Ergebnis zu speichern, das von der File.ReadAllText-Methode zurückgegeben wird.
- Als Nächstes verwenden wir die File.ReadAllText-Methode, um alle Zeilen aus unserer Textdatei zu lesen. Das Ergebnis wird dann an die Zeilenvariable übergeben.
- Wir können die Console.Writeline-Methode direkt verwenden, um den Wert der Variablen Lines anzuzeigen.
Wenn der obige Code festgelegt ist und das Projekt mit Visual Studio ausgeführt wird, erhalten Sie die folgende Ausgabe.
Ausgabe:-
Aus der Ausgabe können Sie ersehen, dass der Befehl File.ReadAlltext beide Zeilen aus unserer Datei Example.txt zurückgegeben hat
File.Copy
Die Methode wird verwendet, um eine Kopie einer vorhandenen Datei zu erstellen. Schauen wir uns ein Beispiel an. Geben Sie den folgenden Code in die Datei program.cs ein.
using System;using System.IO;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DemoApplication{class Tutorial{static void Main(string[] args){String path = @"D:\Example.txt";String copypath = @"D:\ExampleNew.txt";File.Copy(path,copypath);Console.ReadKey();}}}
Code Erläuterung: -
- Zuerst deklarieren wir eine Stringvariable namens path. Dies ist der Speicherort unserer Example.txt-Datei. Diese Datei ist die Quelldatei, die für den Kopiervorgang verwendet wird.
- Als nächstes deklarieren wir eine Stringvariable namens copypath. Dies ist der Speicherort einer neuen Datei mit dem Namen ExampleNew.txt. Dies ist die Zieldatei, in die der Inhalt aus der Quelldatei Example.txt geschrieben wird.
- Wir rufen dann die File.Copy-Methode auf, um die Datei Example.txt in die Datei ExampleNew.txt zu kopieren.
Wenn der obige Code festgelegt ist und das Projekt mit Visual Studio ausgeführt wird, wird die Datei Example.txt in ExampleNew.txt kopiert.
File.Delete
Die Methode wird verwendet, um eine vorhandene Datei zu löschen. Schauen wir uns ein Beispiel an. Geben Sie den folgenden Code in die Datei program.cs ein.
using System;using System.IO;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DemoApplication{class Tutorial{static void Main(string[] args){String path = @"D:\Example.txt";File.Delete(path);Console.ReadKey();}}}
Code Erläuterung: -
- Zuerst deklarieren wir eine Stringvariable namens path. Dies ist der Speicherort unserer Example.txt-Datei. Dies ist die Datei, die gelöscht wird.
- Als nächstes rufen wir die File.Delete-Methode auf, um die Datei zu löschen.
Wenn der obige Code festgelegt ist und das Projekt mit Visual Studio ausgeführt wird, wird die Datei Example.txt vom Laufwerk D gelöscht.
Zusammenfassung
- C # verfügt über eine Reihe von Dateioperationen, die für Dateien ausgeführt werden können. Die meisten dieser Operationen sind Teil der Klassendatei.
- Wenn Sie Daten aus einer Datei lesen möchten, können Sie die Methoden File.ReadAlltext oder File.ReadAllLines verwenden.
Dateimethode | Beschreibung |
---|---|
Datei existiert | Datei existiert Methode wird verwendet, um zu überprüfen, ob eine bestimmte Datei existiert. |
File.ReadAlllines | Die Methode wird verwendet, um alle Zeilen einzeln in einer Datei zu lesen. |
File.ReadAllText | Diese Methode wird verwendet, um alle Zeilen in einer Datei gleichzeitig zu lesen. |
File.Copy | Die Methode wird verwendet, um eine Kopie einer vorhandenen Datei zu erstellen. |
File.Delete | Die Methode wird verwendet, um eine vorhandene Datei zu löschen. |