Feedback

C# - Sicheres Lesen aus einer .txt-Datei

Veröffentlicht von am 22.11.2015
(1 Bewertungen)
Es tritt eine Ausnahme auf, wenn die auszulesende Datei nicht gefunden wird. Folgendes Snippet soll dies umgehen.

GFU-Schulungen  [Anzeige]

C# Aufbaukurs

Sie haben grundlegende .NET- und C#-Kenntnisse und und wollen diese nun erweitern. Der Aufbaukurs C# führt Sie ein die Arbeit mit Interfaces und Delegates, Generics und Parallel Computing.

ASP.NET 2.0 und 3.5

Dieser Kurs vermittelt Ihnen alle Erweiterungen von Microsoft ASP.NET 2.0. Zu diesen zählen u. a. Data Bindung, Master Pages, und Security.

using System.IO;

FileStream filestream;
            StreamReader streamreader;
            string dateiname = "ein.txt";
            string zeile;

            if (!File.Exists(dateiname))
            {
                Console.WriteLine("Datei " + dateiname + " existiert nicht");
                return;
            }

            filestream = new FileStream(dateiname, FileMode.Open);
            streamreader = new StreamReader(filestream);
            while(streamreader.Peek() != -1)
            {
                zeile = streamreader.ReadLine();
                Console.WriteLine(zeile + "\n");
            }

            streamreader.Close();
            filestream.Close();
Abgelegt unter Ausnahmebehandlung.

2 Kommentare zum Snippet

floriankolb schrieb am 22.11.2015:
Warum wird der FileStream am Ende nicht geschlossen - analog zum StreamReader? Wobei zwei using-Statements dafür eleganter wären.
Koopakiller schrieb am 22.11.2015:
Das Snippet umgeht das Werfen einer Exception trotzdem nicht zu 100%. Es könnte passieren das die Datei nach dem prüfen ob sie existiert, aber noch vor dem lesen gelöscht wird.
Ansonsten stimme ich Florian zu.
 

Logge dich ein, um hier zu kommentieren!