Работа с файлами
Часть раздела Логика и управление потоком путешествия по C# на Coddy. Урок 26 из 66.
В C# можно работать с файлами, используя классы из пространства имён System.IO. Два основных класса для текстовых файлов — StreamReader (для чтения) и StreamWriter (для записи).
Запись в файл:
using System.IO;
// Создайте StreamWriter для записи в файл
StreamWriter writer = new StreamWriter("myfile.txt");
// Запишите текст в файл
writer.WriteLine("Hello, World!");
writer.WriteLine("This is line 2");
// Закройте файл
writer.Close();Чтение из файла:
using System.IO;
// Создайте StreamReader для чтения из файла
StreamReader reader = new StreamReader("myfile.txt");
// Прочитайте всё содержимое файла
string content = reader.ReadToEnd();
Console.WriteLine(content);
// Закройте файл
reader.Close();Чтение построчно:
StreamReader reader = new StreamReader("myfile.txt");
// Считать первую строку
string line1 = reader.ReadLine();
Console.WriteLine(line1);
// Считать вторую строку
string line2 = reader.ReadLine();
Console.WriteLine(line2);
reader.Close();Не забывай всегда закрывать файлы с помощью Close(), когда закончишь!
Задание
ЛегкоСоздайте метод с именем ReadFile, который:
- Принимает один строковый параметр:
filename - Читает содержимое файла с помощью
StreamReader - Выводит содержимое в консоль
- Закрывает средство чтения
Попробуйте сами
using System;
using System.IO;
class Program
{
public static void ReadFile(string filename)
{
// Напишите здесь свой код
}
static void Main(string[] args)
{
string filename = Console.ReadLine();
ReadFile(filename);
}
}В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Логика и управление потоком
1Многомерные массивы
Основы 2D-массивовОбъявление и инициализация 2D-массивовДоступ к элементам 2D-массиваВложенные циклы с 2D-массивамиЗубчатые массивыОсновные операции с матрицамиПовторение — многомерные массивы4Методы управления потоком выполнения
Досрочный выходЗащитные условияОператоры перехода (goto)Break и ContinueУпрощение вложенных условных конструкций7Логические операторы: продвинутый уровень
Вычисление с коротким замыканиемУсловные логические операторыПриоритет операторовПовторение — продвинутые операторы2Продвинутое принятие решений
Множественные условияСложная логика BooleanСравнение If и SwitchВложенные конструкции SwitchПовторение — продвинутые решения5Обработка исключений
Основы Try-CatchТипы исключенийНесколько блоков CatchРабота с файламиБлок FinallyИспользование Using вместо Try-FinallyПользовательские исключенияПовторение — обработка ошибок3Улучшение циклов
Производительность цикловИтерация по сложным структурамКаждый тип циклаРефакторинг цикловПовторение — оптимизированные циклы6Обработка null
Основы ссылок на nullТипы значений, допускающие nullШаблоны проверки на nullЗащитное программированиеПовторение — безопасность при работе с nullПотренируйтесь самостоятельно: Онлайн-компилятор C#