File.ReadAllLines Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Открывает текстовый файл, считывает все строки файла в строковый массив, а затем закрывает файл.
Перегрузки
| Имя | Описание |
|---|---|
| ReadAllLines(String) |
Открывает текстовый файл, считывает все строки файла, а затем закрывает файл. |
| ReadAllLines(String, Encoding) |
Открывает файл, считывает все строки файла с указанным кодировкой, а затем закрывает файл. |
ReadAllLines(String)
- Исходный код:
- File.cs
- Исходный код:
- File.cs
- Исходный код:
- File.cs
- Исходный код:
- File.cs
- Исходный код:
- File.cs
Открывает текстовый файл, считывает все строки файла, а затем закрывает файл.
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()
Параметры
- path
- String
Файл, который нужно открыть для чтения.
Возвращаемое значение
Массив строк, содержащий все строки файла.
Исключения
Версии .NET Framework и .NET Core старше 2.1: path представляет собой строку нулевой длины, содержит только пробелы или содержит один или несколько недопустимых символов. Вы можете запросить недопустимые символы с помощью метода GetInvalidPathChars().
path равно null.
Указанный путь, имя файла или оба превышают определенную системой максимальную длину.
Указанный путь недопустим (например, он находится на несопоставленном диске).
При открытии файла произошла ошибка ввода-вывода.
Эта операция не поддерживается на текущей платформе.
–или–
path указан каталог.
–или–
Вызывающий объект не имеет требуемого разрешения.
Файл, указанный в path, не найден.
path имеет недопустимый формат.
Вызывающий объект не имеет требуемого разрешения.
Примеры
В следующем примере кода показано использование ReadAllLines метода для отображения содержимого файла. В этом примере создается файл, если он еще не существует, и в него добавляется текст.
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
Комментарии
Этот метод открывает файл, считывает каждую строку файла, а затем добавляет каждую строку в качестве элемента массива строк. Затем он закрывает файл. Строка определяется как последовательность символов, за которой следует возврат каретки ("\r"), канал строки ("\n" или возврат каретки сразу после канала строки. Результирующая строка не содержит конца возвращаемого каретки и /или канала строки.
Если файл заканчивается новой строкой, к массиву не добавляется дополнительная пустая строка. Например, файл, содержащий "line1\nline2\n" один и тот же массив двух элементов (["line1", "line2"]), что и файл, содержащий "line1\nline2".
Этот метод пытается автоматически определить кодировку файла на основе наличия меток порядка байтов. Форматы кодировки UTF-8 и UTF-32 (как большие, так и маленькие) могут быть обнаружены.
См. также раздел
- Файловый и потоковый ввод-вывод
- чтение текста из файла
- Практическое руководство. Запись текста в файл
- Практическое руководство. Чтение и запись в только что созданный файл данных
Применяется к
ReadAllLines(String, Encoding)
- Исходный код:
- File.cs
- Исходный код:
- File.cs
- Исходный код:
- File.cs
- Исходный код:
- File.cs
- Исходный код:
- File.cs
Открывает файл, считывает все строки файла с указанным кодировкой, а затем закрывает файл.
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()
Параметры
- path
- String
Файл, который нужно открыть для чтения.
- encoding
- Encoding
Кодировка, примененная к содержимому файла.
Возвращаемое значение
Массив строк, содержащий все строки файла.
Исключения
Версии .NET Framework и .NET Core старше 2.1: path представляет собой строку нулевой длины, содержит только пробелы или содержит один или несколько недопустимых символов. Вы можете запросить недопустимые символы с помощью метода GetInvalidPathChars().
path равно null.
Указанный путь, имя файла или оба превышают определенную системой максимальную длину.
Указанный путь недопустим (например, он находится на несопоставленном диске).
При открытии файла произошла ошибка ввода-вывода.
Эта операция не поддерживается на текущей платформе.
–или–
path указан каталог.
–или–
Вызывающий объект не имеет требуемого разрешения.
Файл, указанный в path, не найден.
path имеет недопустимый формат.
Вызывающий объект не имеет требуемого разрешения.
Примеры
В следующем примере кода показано использование ReadAllLines метода для отображения содержимого файла. В этом примере создается файл, если он еще не существует, и в него добавляется текст.
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
Комментарии
Этот метод открывает файл, считывает каждую строку файла, а затем добавляет каждую строку в качестве элемента массива строк. Затем он закрывает файл. Строка определяется как последовательность символов, за которой следует возврат каретки ("\r"), канал строки ("\n" или возврат каретки сразу после канала строки. Результирующая строка не содержит конца возвращаемого каретки и /или канала строки.
Если файл заканчивается новой строкой, к массиву не добавляется дополнительная пустая строка. Например, файл, содержащий "line1\nline2\n" один и тот же массив двух элементов (["line1", "line2"]), что и файл, содержащий "line1\nline2".
Этот метод пытается автоматически определить кодировку файла на основе наличия меток порядка байтов. Форматы кодировки UTF-8 и UTF-32 (как большие, так и маленькие) могут быть обнаружены.
См. также раздел
- Файловый и потоковый ввод-вывод
- чтение текста из файла
- Практическое руководство. Запись текста в файл
- Практическое руководство. Чтение и запись в только что созданный файл данных