Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю
Запись в текстовый файл
Чтобы увидеть класс
StreamWriter
StreamWriterReaderApp
System.IO
System.Text
File.CreateText()
reminders.txt
StreamWriter
using System;
using System.IO;
using System.Text;
Console.WriteLine("***** Fun with StreamWriter / StreamReader *****n");
<b>// Получить объект StreamWriter и записать строковые данные.</b>
using(StreamWriter writer = File.CreateText("reminders.txt"))
{
writer.WriteLine("Don't forget Mother's Day this year...");
writer.WriteLine("Don't forget Father's Day this year...");
writer.WriteLine("Don't forget these numbers:");
for(int i = 0; i < 10; i++)
{
writer.Write(i + " ");
}
<b> // Вставить новую строку.</b>
writer.Write(writer.NewLine);
}
Console.WriteLine("Created file and wrote some thoughts...");
Console.ReadLine();
//File.Delete("reminders.txt");
После выполнения программы можете просмотреть содержимое созданного файла, который будет находиться в корневом каталоге проекта (Visual Studio Code) или в подкаталоге
binDebugnet5.0
CreateText()
Чтение из текстового файла
Далее вы научитесь программно читать данные из файла, используя соответствующий тип
StreamReader
StreamReader
TextReader

Расширьте текущий пример приложения с целью применения класса
StreamReader
reminders.txt
Console.WriteLine("***** Fun with StreamWriter/StreamReader *****n");
...
<b>// Прочитать данные из файла.</b>
Console.WriteLine("Here are your thoughts:n");
using(StreamReader sr = File.OpenText("reminders.txt"))
{
string input = null;
while ((input = sr.ReadLine()) != null)
{
Console.WriteLine (input);
}
}
Console.ReadLine();
После запуска программы в окне консоли отобразятся символьные данные из файла
reminders.txt
Прямое создание объектов типа StreamWriter/StreamReader
Один из запутывающих аспектов работы с типами пространства имен
System.IO
CreateText()
StreamWriter
File
FileInfo
StreamWriter
StreamReader
Console.WriteLine("***** Fun with StreamWriter/StreamReader *****n");
<b>// Получить объект StreamWriter и записать строковые данные.</b>
using(StreamWriter writer = new StreamWriter("reminders.txt"))
{
...
}
<b>// Прочитать данные из файла.</b>
using(StreamReader sr = new StreamReader("reminders.txt"))
{
...
}
Несмотря на то что существование такого количества на первый взгляд одинаковых подходов к файловому вводу-выводу может сбивать с толку, имейте в виду,что конечным результатом является высокая гибкость. Теперь, когда вам известно, как перемещать символьные данные в файл и из файла с применением классов
StreamWriter
StreamReader
StringWriter
StringReader
Работа с типами StringWriter и StringReader
Классы
StringWriter
StringReader
StringReaderWriterApp
StringWriter
System.IO
System.Text