File.ReadAllLines Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Öppnar en textfil, läser alla rader i filen i en strängmatris och stänger sedan filen.
Överlagringar
| Name | Description |
|---|---|
| ReadAllLines(String) |
Öppnar en textfil, läser alla rader i filen och stänger sedan filen. |
| ReadAllLines(String, Encoding) |
Öppnar en fil, läser alla rader i filen med den angivna kodningen och stänger sedan filen. |
ReadAllLines(String)
Öppnar en textfil, läser alla rader i filen och stänger sedan filen.
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()
Parametrar
- path
- String
Filen som ska öppnas för läsning.
Returer
En strängmatris som innehåller alla rader i filen.
Undantag
.NET Framework- och .NET Core-versioner som är äldre än 2.1: path är en sträng med noll längd, innehåller endast tomt utrymme eller innehåller ett eller flera ogiltiga tecken. Du kan fråga efter ogiltiga tecken med hjälp GetInvalidPathChars() av metoden .
path är null.
Den angivna sökvägen, filnamnet eller båda överskrider den systemdefinierade maximala längden.
Den angivna sökvägen är ogiltig (den finns till exempel på en ommappad enhet).
Ett I/O-fel uppstod när filen öppnades.
Den här åtgärden stöds inte på den aktuella plattformen.
-eller-
path har angett en katalog.
-eller-
Anroparen har inte den behörighet som krävs.
Filen som angavs i path hittades inte.
path är i ett ogiltigt format.
Anroparen har inte den behörighet som krävs.
Exempel
Följande kodexempel visar hur metoden används ReadAllLines för att visa innehållet i en fil. I det här exemplet skapas en fil, om den inte redan finns, och text läggs till i den.
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
Kommentarer
Den här metoden öppnar en fil, läser varje rad i filen och lägger sedan till varje rad som ett element i en strängmatris. Sedan stängs filen. En rad definieras som en sekvens med tecken följt av en vagnretur ("\r", en radmatning ("\n") eller en vagnretur omedelbart följt av en radmatning. Den resulterande strängen innehåller inte den avslutande vagnreturen och/eller radmatningen.
Om filen slutar med en ny rad läggs ingen ytterligare tom rad till i matrisen. En fil som innehåller "line1\nline2\n" skapar till exempel samma matris med två element (["line1", "line2"]) som en fil som innehåller "line1\nline2".
Den här metoden försöker automatiskt identifiera kodningen av en fil baserat på förekomsten av byteordningsmärken. Kodningsformat UTF-8 och UTF-32 (både big-endian och little-endian) kan identifieras.
Se även
- Fil- och ström-I/O
- Läsa text från en fil
- Anvisningar: Skriva text till en fil
- Anvisningar: Läsa och skriva till en nyligen skapad datafil
Gäller för
ReadAllLines(String, Encoding)
Öppnar en fil, läser alla rader i filen med den angivna kodningen och stänger sedan filen.
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()
Parametrar
- path
- String
Filen som ska öppnas för läsning.
- encoding
- Encoding
Kodningen som tillämpas på innehållet i filen.
Returer
En strängmatris som innehåller alla rader i filen.
Undantag
.NET Framework- och .NET Core-versioner som är äldre än 2.1: path är en sträng med noll längd, innehåller endast tomt utrymme eller innehåller ett eller flera ogiltiga tecken. Du kan fråga efter ogiltiga tecken med hjälp GetInvalidPathChars() av metoden .
path är null.
Den angivna sökvägen, filnamnet eller båda överskrider den systemdefinierade maximala längden.
Den angivna sökvägen är ogiltig (den finns till exempel på en ommappad enhet).
Ett I/O-fel uppstod när filen öppnades.
Den här åtgärden stöds inte på den aktuella plattformen.
-eller-
path har angett en katalog.
-eller-
Anroparen har inte den behörighet som krävs.
Filen som angavs i path hittades inte.
path är i ett ogiltigt format.
Anroparen har inte den behörighet som krävs.
Exempel
Följande kodexempel visar hur metoden används ReadAllLines för att visa innehållet i en fil. I det här exemplet skapas en fil, om den inte redan finns, och text läggs till i den.
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
Kommentarer
Den här metoden öppnar en fil, läser varje rad i filen och lägger sedan till varje rad som ett element i en strängmatris. Sedan stängs filen. En rad definieras som en sekvens med tecken följt av en vagnretur ("\r", en radmatning ("\n") eller en vagnretur omedelbart följt av en radmatning. Den resulterande strängen innehåller inte den avslutande vagnreturen och/eller radmatningen.
Om filen slutar med en ny rad läggs ingen ytterligare tom rad till i matrisen. En fil som innehåller "line1\nline2\n" skapar till exempel samma matris med två element (["line1", "line2"]) som en fil som innehåller "line1\nline2".
Den här metoden försöker automatiskt identifiera kodningen av en fil baserat på förekomsten av byteordningsmärken. Kodningsformat UTF-8 och UTF-32 (både big-endian och little-endian) kan identifieras.
Se även
- Fil- och ström-I/O
- Läsa text från en fil
- Anvisningar: Skriva text till en fil
- Anvisningar: Läsa och skriva till en nyligen skapad datafil