File.ReadAllLines Methode

Definition

Öffnet eine Textdatei, liest alle Zeilen der Datei in ein Zeichenfolgenarray und schließt dann die Datei.

Überlädt

Name Beschreibung
ReadAllLines(String)

Öffnet eine Textdatei, liest alle Zeilen der Datei und schließt dann die Datei.

ReadAllLines(String, Encoding)

Öffnet eine Datei, liest alle Zeilen der Datei mit der angegebenen Codierung und schließt dann die Datei.

ReadAllLines(String)

Quelle:
File.cs
Quelle:
File.cs
Quelle:
File.cs
Quelle:
File.cs
Quelle:
File.cs

Öffnet eine Textdatei, liest alle Zeilen der Datei und schließt dann die Datei.

public:
 static cli::array <System::String ^> ^ ReadAllLines(System::String ^ path);
public static string[] ReadAllLines(string path);
static member ReadAllLines : string -> string[]
Public Shared Function ReadAllLines (path As String) As String()

Parameter

path
String

Die Datei, die zum Lesen geöffnet werden soll.

Gibt zurück

String[]

Ein Zeichenfolgenarray, das alle Zeilen der Datei enthält.

Ausnahmen

.NET Framework- und .NET Core-Versionen, die älter als 2.1 sind: path eine leere Zeichenfolge, enthält nur Leerzeichen oder enthält mindestens ein ungültiges Zeichen. Sie können ungültige Zeichen mithilfe der GetInvalidPathChars() Methode abfragen.

path ist null.

Der angegebene Pfad, der Dateiname oder beide überschreiten die vom System definierte maximale Länge.

Der angegebene Pfad ist ungültig (z. B. auf einem nicht zugeordneten Laufwerk).

Beim Öffnen der Datei ist ein E/A-Fehler aufgetreten.

Dieser Vorgang wird auf der aktuellen Plattform nicht unterstützt.

- oder -

path ein Verzeichnis angegeben.

- oder -

Der Aufrufer verfügt nicht über die erforderliche Berechtigung.

Die angegebene path Datei wurde nicht gefunden.

path ist in einem ungültigen Format vorhanden.

Der Aufrufer verfügt nicht über die erforderliche Berechtigung.

Beispiele

Im folgenden Codebeispiel wird die Verwendung der ReadAllLines Methode zum Anzeigen des Inhalts einer Datei veranschaulicht. In diesem Beispiel wird eine Datei erstellt, sofern sie noch nicht vorhanden ist, und ihr Text hinzugefügt.

using System;
using System.IO;
class Test
{
    public static void Main()
    {
        string path = @"c:\temp\MyTest.txt";

        // This text is added only once to the file.
        if (!File.Exists(path))
        {
            // Create a file to write to.
            string[] createText = { "Hello", "And", "Welcome" };
            File.WriteAllLines(path, createText);
        }

        // This text is always added, making the file longer over time
        // if it is not deleted.
        string appendText = "This is extra text" + Environment.NewLine;
        File.AppendAllText(path, appendText);

        // Open the file to read from.
        string[] readText = File.ReadAllLines(path);
        foreach (string s in readText)
        {
            Console.WriteLine(s);
        }
    }
}
open System
open System.IO

let path = @"c:\temp\MyTest.txt"

// This text is added only once to the file.
if File.Exists path |> not then
    // Create a file to write to.
    let createText = [ "Hello"; "And"; "Welcome" ]
    File.WriteAllLines(path, createText)

// This text is always added, making the file longer over time
// if it is not deleted.
let appendText =
    "This is extra text" + Environment.NewLine

File.AppendAllText(path, appendText)

// Open the file to read from.
let readText = File.ReadAllLines path

for s in readText do
    printfn $"{s}"
Imports System.IO

Public Class Test
    Public Shared Sub Main()
        Dim path As String = "c:\temp\MyTest.txt"
        Dim sw As StreamWriter

        ' This text is added only once to the file.
        If File.Exists(path) = False Then

            ' Create a file to write to.
            Dim createText() As String = {"Hello", "And", "Welcome"}
            File.WriteAllLines(path, createText)
        End If

        ' This text is always added, making the file longer over time
        ' if it is not deleted.
        Dim appendText As String = "This is extra text" + Environment.NewLine
        File.AppendAllText(path, appendText)

        ' Open the file to read from.
        Dim readText() As String = File.ReadAllLines(path)
        Dim s As String
        For Each s In readText
            Console.WriteLine(s)
        Next
    End Sub
End Class

Hinweise

Diese Methode öffnet eine Datei, liest jede Zeile der Datei und fügt dann jede Zeile als Element eines Zeichenfolgenarrays hinzu. Anschließend wird die Datei geschlossen. Eine Zeile wird als Eine Folge von Zeichen definiert, gefolgt von einer Wagenrücklauf ('\r'), einem Zeilenvorschub ('\n') oder einem Wagenrücklauf unmittelbar gefolgt von einem Zeilenvorschub. Die resultierende Zeichenfolge enthält nicht den endenden Wagenrücklauf und/oder zeilenvorschub.

Wenn die Datei mit einer Newlinesequenz endet, wird keine zusätzliche leere Zeile an das Array angefügt. Beispielsweise erzeugt eine Datei "line1\nline2\n" , die das gleiche Zweielementarray (["line1", "line2"]) wie eine Datei enthält "line1\nline2".

Diese Methode versucht, die Codierung einer Datei basierend auf dem Vorhandensein von Bytereihenfolgezeichen automatisch zu erkennen. Codierungsformate UTF-8 und UTF-32 (sowohl Big-Endian als auch Little-Endian) können erkannt werden.

Weitere Informationen

Gilt für:

ReadAllLines(String, Encoding)

Quelle:
File.cs
Quelle:
File.cs
Quelle:
File.cs
Quelle:
File.cs
Quelle:
File.cs

Öffnet eine Datei, liest alle Zeilen der Datei mit der angegebenen Codierung und schließt dann die Datei.

public:
 static cli::array <System::String ^> ^ ReadAllLines(System::String ^ path, System::Text::Encoding ^ encoding);
public static string[] ReadAllLines(string path, System.Text.Encoding encoding);
static member ReadAllLines : string * System.Text.Encoding -> string[]
Public Shared Function ReadAllLines (path As String, encoding As Encoding) As String()

Parameter

path
String

Die Datei, die zum Lesen geöffnet werden soll.

encoding
Encoding

Die auf den Inhalt der Datei angewendete Codierung.

Gibt zurück

String[]

Ein Zeichenfolgenarray, das alle Zeilen der Datei enthält.

Ausnahmen

.NET Framework- und .NET Core-Versionen, die älter als 2.1 sind: path eine leere Zeichenfolge, enthält nur Leerzeichen oder enthält mindestens ein ungültiges Zeichen. Sie können ungültige Zeichen mithilfe der GetInvalidPathChars() Methode abfragen.

path ist null.

Der angegebene Pfad, der Dateiname oder beide überschreiten die vom System definierte maximale Länge.

Der angegebene Pfad ist ungültig (z. B. auf einem nicht zugeordneten Laufwerk).

Beim Öffnen der Datei ist ein E/A-Fehler aufgetreten.

Dieser Vorgang wird auf der aktuellen Plattform nicht unterstützt.

- oder -

path ein Verzeichnis angegeben.

- oder -

Der Aufrufer verfügt nicht über die erforderliche Berechtigung.

Die angegebene path Datei wurde nicht gefunden.

path ist in einem ungültigen Format vorhanden.

Der Aufrufer verfügt nicht über die erforderliche Berechtigung.

Beispiele

Im folgenden Codebeispiel wird die Verwendung der ReadAllLines Methode zum Anzeigen des Inhalts einer Datei veranschaulicht. In diesem Beispiel wird eine Datei erstellt, sofern sie noch nicht vorhanden ist, und ihr Text hinzugefügt.

using System;
using System.IO;
using System.Text;

class Test
{
    public static void Main()
    {
        string path = @"c:\temp\MyTest.txt";

        // This text is added only once to the file.
        if (!File.Exists(path))
        {
            // Create a file to write to.
            string[] createText = { "Hello", "And", "Welcome" };
            File.WriteAllLines(path, createText, Encoding.UTF8);
        }

        // This text is always added, making the file longer over time
        // if it is not deleted.
        string appendText = "This is extra text" + Environment.NewLine;
        File.AppendAllText(path, appendText, Encoding.UTF8);

        // Open the file to read from.
        string[] readText = File.ReadAllLines(path, Encoding.UTF8);
        foreach (string s in readText)
        {
            Console.WriteLine(s);
        }
    }
}
open System
open System.IO
open System.Text

let path = @"c:\temp\MyTest.txt"

// This text is added only once to the file.
if File.Exists path |> not then
    // Create a file to write to.
    let createText = [ "Hello"; "And"; "Welcome" ]
    File.WriteAllLines(path, createText, Encoding.UTF8)

// This text is always added, making the file longer over time
// if it is not deleted.
let appendText =
    "This is extra text" + Environment.NewLine

File.AppendAllText(path, appendText, Encoding.UTF8)

// Open the file to read from.
let readText = File.ReadAllLines(path, Encoding.UTF8)

for s in readText do
    printfn $"{s}"
Imports System.IO
Imports System.Text

Public Class Test
    Public Shared Sub Main()
        Dim path As String = "c:\temp\MyTest.txt"
        Dim sw As StreamWriter

        ' This text is added only once to the file.
        If File.Exists(path) = False Then

            ' Create a file to write to.
            Dim createText() As String = {"Hello", "And", "Welcome"}
            File.WriteAllLines(path, createText, Encoding.UTF8)
        End If

        ' This text is always added, making the file longer over time
        ' if it is not deleted.
        Dim appendText As String = "This is extra text" + Environment.NewLine
        File.AppendAllText(path, appendText, Encoding.UTF8)

        ' Open the file to read from.
        Dim readText() As String = File.ReadAllLines(path, Encoding.UTF8)
        Dim s As String
        For Each s In readText
            Console.WriteLine(s)
        Next
    End Sub
End Class

Hinweise

Diese Methode öffnet eine Datei, liest jede Zeile der Datei und fügt dann jede Zeile als Element eines Zeichenfolgenarrays hinzu. Anschließend wird die Datei geschlossen. Eine Zeile wird als Eine Folge von Zeichen definiert, gefolgt von einer Wagenrücklauf ('\r'), einem Zeilenvorschub ('\n') oder einem Wagenrücklauf unmittelbar gefolgt von einem Zeilenvorschub. Die resultierende Zeichenfolge enthält nicht den endenden Wagenrücklauf und/oder zeilenvorschub.

Wenn die Datei mit einer Newlinesequenz endet, wird keine zusätzliche leere Zeile an das Array angefügt. Beispielsweise erzeugt eine Datei "line1\nline2\n" , die das gleiche Zweielementarray (["line1", "line2"]) wie eine Datei enthält "line1\nline2".

Diese Methode versucht, die Codierung einer Datei basierend auf dem Vorhandensein von Bytereihenfolgezeichen automatisch zu erkennen. Codierungsformate UTF-8 und UTF-32 (sowohl Big-Endian als auch Little-Endian) können erkannt werden.

Weitere Informationen

Gilt für: