File.ReadAllLines Metoda

Definice

Otevře textový soubor, přečte všechny řádky souboru do pole řetězců a pak soubor zavře.

Přetížení

ReadAllLines(String)

Otevře textový soubor, přečte všechny řádky souboru a pak soubor zavře.

ReadAllLines(String, Encoding)

Otevře soubor, přečte všechny řádky souboru se zadaným kódováním a pak soubor zavře.

ReadAllLines(String)

Otevře textový soubor, přečte všechny řádky souboru a pak soubor zavře.

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()

Parametry

path
String

Soubor, který se má otevřít pro čtení.

Návraty

String[]

Pole řetězců obsahující všechny řádky souboru.

Výjimky

.NET Framework a .NET Core verze starší než 2.1: path je řetězec nulové délky, obsahuje pouze prázdné znaky nebo obsahuje jeden nebo více neplatných znaků. Na neplatné znaky se můžete dotazovat pomocí metody .GetInvalidPathChars()

path je null.

Zadaná cesta, název souboru nebo obojí překračují maximální délku definovanou systémem.

Zadaná cesta je neplatná (například je na nenamapované jednotce).

Při otevírání souboru došlo ke vstupně-výstupní chybě.

path zadal(a) soubor, který je jen pro čtení.

-nebo-

Tato operace není na aktuální platformě podporovaná.

-nebo-

path zadal(a) adresář.

-nebo-

Volající nemá požadované oprávnění.

Soubor zadaný v path souboru nebyl nalezen.

path je v neplatném formátu.

Volající nemá požadované oprávnění.

Příklady

Následující příklad kódu ukazuje použití ReadAllLines metody k zobrazení obsahu souboru. V tomto příkladu se vytvoří soubor, pokud ještě neexistuje, a přidá se do něj text.

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

Poznámky

Tato metoda otevře soubor, přečte každý řádek souboru a pak přidá každý řádek jako prvek pole řetězců. Potom soubor zavře. Čára je definována jako posloupnost znaků následovaná znakem návratu na začátek řádku ('\r'), odřádkováním ('\n') nebo návratem na začátek řádku bezprostředně následovaným odřádkováním. Výsledný řetězec neobsahuje konec konce řádku a/nebo odřádkování.

Tato metoda se pokusí automaticky zjistit kódování souboru na základě přítomnosti značek pořadí bajtů. Lze zjistit formáty kódování UTF-8 a UTF-32 (big-endian i little-endian).

Viz také

Platí pro

ReadAllLines(String, Encoding)

Otevře soubor, přečte všechny řádky souboru se zadaným kódováním a pak soubor zavře.

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()

Parametry

path
String

Soubor, který se má otevřít pro čtení.

encoding
Encoding

Kódování použité pro obsah souboru.

Návraty

String[]

Pole řetězců obsahující všechny řádky souboru.

Výjimky

.NET Framework a .NET Core verze starší než 2.1: path je řetězec nulové délky, obsahuje pouze prázdné znaky nebo obsahuje jeden nebo více neplatných znaků. Na neplatné znaky se můžete dotazovat pomocí metody .GetInvalidPathChars()

path je null.

Zadaná cesta, název souboru nebo obojí překračují maximální délku definovanou systémem.

Zadaná cesta je neplatná (například je na nenamapované jednotce).

Při otevírání souboru došlo ke vstupně-výstupní chybě.

path zadal(a) soubor, který je jen pro čtení.

-nebo-

Tato operace není na aktuální platformě podporovaná.

-nebo-

path zadal(a) adresář.

-nebo-

Volající nemá požadované oprávnění.

Soubor zadaný v path souboru nebyl nalezen.

path je v neplatném formátu.

Volající nemá požadované oprávnění.

Příklady

Následující příklad kódu ukazuje použití ReadAllLines metody k zobrazení obsahu souboru. V tomto příkladu se vytvoří soubor, pokud ještě neexistuje, a přidá se do něj text.

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

Poznámky

Tato metoda otevře soubor, přečte každý řádek souboru a poté přidá každý řádek jako prvek pole řetězců. Potom soubor zavře. Čára je definována jako posloupnost znaků následovaná znakem návratu na začátek řádku ('\r'), odřádkováním ('\n') nebo návratem na začátek řádku bezprostředně následovaným odřádkováním. Výsledný řetězec neobsahuje konec konce řádku a/nebo odřádkování.

Tato metoda se pokusí automaticky zjistit kódování souboru na základě přítomnosti značek pořadí bajtů. Lze zjistit formáty kódování UTF-8 a UTF-32 (big-endian i little-endian).

Viz také

Platí pro