Как прочитать текстовый файл в C#
Файлы используются для постоянного хранения и обмена данными. Необходимость записи данных в файл обусловлена тем, что остановка программы, как правило, приводит к удалению всех данных, связанных с ней. Поэтому нам нужно где-то хранить данные.
Чтение текстового файла
Класс File в C# определяет два статических метода для чтения текстового файла, а именно **File.ReadAllText() и File.ReadAllLines().
File.ReadAllText() сразу читает весь файл и возвращает строку. Нам нужно сохранить эту строку в переменной и использовать ее для отображения содержимого на экране.
File.ReadAllLines() читает файл по одной строке за раз и возвращает эту строку в строковом формате. Нам нужен массив строк для хранения каждой строки. Мы отображаем содержимое файла, используя тот же массив строк.
Есть еще один способ прочитать файл в C# — использовать объект StreamReader. StreamReader такжесчитывает построчно и возвращает строку. Все вышеупомянутые способы чтения файла проиллюстрированы в приведенном ниже примере кода.
Создадим консольный проект в Visual Studio и пропишем в нем следующий код.
using System;
// пространство имен для с вводом
using System.IO;
class Program {
static void Main(string[] args)
{
// определите путь к текстовому файлу в вашей системе
string file = @"C:\Documents\Textfile.txt";
Console.WriteLine("Чтение файла с помощью File.ReadAllText()");
// Чтение всего файла за один раз
// Если файл существует
if (File.Exists(file)) {
// Чтение всего содержимого в одной строке
// и вывод его на экран
string str = File.ReadAllText(file);
Console.WriteLine(str);
}
Console.WriteLine();
Console.WriteLine("Чтение файла с помощью File.ReadAllLines()");
// Прочитать текст по одной строке за раз
if (File.Exists(file)) {
// Поместим каждую строку в массив строк
string[] lines = File.ReadAllLines(file);
foreach(string ln in lines)
Console.WriteLine(ln);
}
Console.WriteLine();
Console.WriteLine("Чтение файла с помощью StreamReader");
// используем StreamReader
if (File.Exists(file)) {
// Читаем файл построчно
var textFile = new StreamReader(file);
string line;
while ((line = textFile.ReadLine()) != null) {
Console.WriteLine(line);
}
textFile.Close();
Console.ReadKey();
}
Console.WriteLine();
}
}
Чтобы запустить эту программу, сохраните файл с расширением .cs, а затем выполните команду /путь к компилятору/csc filename.cs в cmd. После выполнения данной команды должен появиться исполняемый .exe файл. Или вы можете использовать Visual Studio - там просто нужно нажать на кнопку - Запуск без отладки.
Таким образом, мы прочитали текст из файла тремя способами, каждый из которых имеет свои преимущества.
-
- Михаил Русаков
Комментарии (0):
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.