Heim > Artikel > Backend-Entwicklung > C#-Datei lesen
Das Ausführen von Dateioperationen ist ein wesentlicher Bestandteil des Programmiererlebens und alle Programmiersprachen bieten verschiedene Bibliotheken oder Funktionen, um dasselbe zu erreichen. Dasselbe kann in C# mithilfe der im File-Klassenanbieter verfügbaren Methoden durchgeführt werden. Im Allgemeinen erfolgt das Lesen aus einer Datei mit den beiden Methoden ReadAllText(file) und ReadAllLines(file), wobei „file“ die Datei bezeichnet, die gelesen werden muss. Dateien können mit dem Streamreader auch als Bytes gelesen werden. In diesem Artikel werden die verschiedenen Methoden, die in C# zum Lesen einer Datei verfügbar sind, im Detail behandelt, zusammen mit entsprechenden Beispielen.
Syntax:
ReadAllText() hat die folgende Syntax
public static string ReadAllText (String Path, System.Text.Encoding encoding)
ReadAllLines() hat die folgende Syntax
public static string ReadAllLines(String, Encoding)
Diese Methode liest alle in der Datei vorhandenen Zeilen, speichert sie dann in einem String und schließt dann die Datei.
Der Rückgabetyp dieser Methode ist eine Zeichenfolge, die den gesamten Inhalt der Datei enthält. Diese Methode ist im System.IO-Namespace verfügbar und die dieser Methode zugeordnete Assembly ist mscorlib.dll.
Ausnahmen im Zusammenhang mit ReadAllText() der ReadAllLines()-Methode:
Hier sind die folgenden Beispiele.
Code:
using System; using System.IO; using System.Text; namespace ReadAllText { class Test { static void Main(string[] args) { var Fpath= @"C:\Vignesh\KB.txt"; string content = File.ReadAllText(Fpath, Encoding.UTF8); Console.WriteLine(content); } } }
Ausgabe:
Code:
using System; using System.IO; using System.Text; namespace ReadAllLines { class Test { static void Main(string[] args) { var inputfile = @"C:\Vignesh\append.txt"; string[] output = File.ReadAllLines(inputfile, Encoding.UTF8); foreach (string op in output) { Console.WriteLine(op); } } } }
Ausgabe:
1. StreamReader.ReadToEnd(): Diese Methode wird verwendet, um die Datei von der aktuellen Position bis zum Ende des Streams zu lesen. Der entsprechende Namespace für diese Methode ist System.Io und die Assembly ist mscorblib.dll.
Syntax:
public override string ReadToEnd ();
Eingabeparameter: Diese Methode erfordert keine Eingabeparameter.
Rückgabe: Diese Methode gibt den Dateiinhalt als Stream aus. Wenn die aktuelle Position auf das letzte Zeichen der Datei festgelegt ist, wird ein leerer String zurückgegeben.
2. StreamReader.ReadLine(): Diese Methode liest die Zeichen aus dem aktuellen Stream und sendet die Daten als String an die Ausgabe. Der entsprechende Namespace für diese Methode ist System.Io und die Assembly ist mscorblib.dll.
Syntax:
public override string ReadLine();
Eingabeparameter: Diese Methode erfordert keine Eingabeparameter.
Rückgabe: Es wird die nächste Zeile zum aktuellen Stream zurückgegeben. Wenn sich der aktuelle Stream an der letzten Zeilenposition befindet, wird null zurückgegeben.
Code:
using System; using System.IO; using System.Text; class Program { static void Main(string[] args) { var FP = @"C:\Vignesh\Names.txt"; using var fstre = new FileStream(FP, FileMode.Open, FileAccess.Read); using var sree = new StreamReader(fstre, Encoding.UTF8); string Fcontent = sree.ReadToEnd(); Console.WriteLine(Fcontent); } }
Ausgabe:
Code:
using System; using System.IO; using System.Text; class Program { static void Main(string[] args) { var filpath = @"C:\Vignesh\TimerJob-2019-08-09.txt"; using var fstre = new FileStream(filpath, FileMode.Open, FileAccess.Read); using var sreee = new StreamReader(fstre, Encoding.UTF8); string cline = String.Empty; while ((cline = sreee.ReadLine()) != null) { Console.WriteLine(cline); } } }
Ausgabe:
Code:
using System; using System.IO; namespace testclass { class Test { string FPath = @ "C:\Vignesh\Script to 0365 connection.txt"; static void Main(string[] args) { //Check if file is there at the path //ReadallOutput() if (File.Exists(FPath)) { string output = File.ReadAlloutput(FPath); Console.WriteLine(output); } //Check if file is there at the path if (File.Exists(FPath)) { //ReadallLines() string[] Flines = File.ReadAllFlines(FPath); foreach(string line in Flines) Console.WriteLine(line); } //Check if file is there at the path if (File.Exists(FPath)) { //using streamreader using(StreamReader file = new StreamReader(FPath)) { int counter = 0; string lgth; while ((lgth = file.ReadLine()) != null) { Console.WriteLine(lgth); counter++; } file.Close(); } } Console.ReadKey(); } } }
Ausgabe:
Code:
using System; using System.IO; using System.Text; using System.Threading.Tasks; class TestProgram { static async Task Main(string[] args) { var ip = @" C:\Vignesh\Patching\Patching Steps.txt"; using var fssss = new FileStream(ip, FileMode.Open, FileAccess.Read); using var srrr = new StreamReader(fssss, Encoding.UTF8); //Reading asynchronously string op = await srrr.ReadToEndAsync(); Console.WriteLine(op); } }
Ausgabe:
Daher wurde in dem Artikel ausführlich auf die Funktionalität zum Lesen von Dateien in c# eingegangen. Es wurden die verschiedenen Methoden erläutert, die zur Durchführung der Operation zur Verfügung stehen. Außerdem wurden verschiedene Parameter und Ausnahmen behandelt, die jeder Methode zugeordnet sind, und zusammen mit Beispielprogrammen ausführlich erläutert. Um detaillierter darauf einzugehen, empfiehlt es sich, Beispielprogramme zu schreiben und diese zu üben.
Das obige ist der detaillierte Inhalt vonC#-Datei lesen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!