» » » » Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю

Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю

На нашем литературном портале можно бесплатно читать книгу Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю, Троелсен Эндрю . Жанр: Базы данных. Онлайн библиотека дает возможность прочитать весь текст и даже без регистрации и СМС подтверждения на нашем литературном портале litmir.org.
Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю
Название: Язык программирования C#9 и платформа .NET5
Дата добавления: 22 август 2024
Количество просмотров: 242
Читать онлайн

Внимание! Книга может содержать контент только для совершеннолетних. Для несовершеннолетних просмотр данного контента СТРОГО ЗАПРЕЩЕН! Если в книге присутствует наличие пропаганды ЛГБТ и другого, запрещенного контента - просьба написать на почту readbookfedya@gmail.com для удаления материала

Язык программирования C#9 и платформа .NET5 читать книгу онлайн

Язык программирования C#9 и платформа .NET5 - читать бесплатно онлайн , автор Троелсен Эндрю

В 10-м издании книги описаны новейшие возможности языка C# 9 и .NET 5 вместе с подробным "закулисным" обсуждением, призванным расширить навыки критического мышления разработчиков, когда речь идет об их ремесле.

Книга охватывает ASP.NET Core, Entity Framework Core и многое другое наряду с последними обновлениями унифицированной платформы .NET, начиная с улучшений показателей производительности настольных приложений Windows в .NET 5 и обновления инструментария XAML и заканчивая расширенным рассмотрением файлов данных и способов обработки данных.

Все примеры кода были переписаны с учетом возможностей последнего выпуска C# 9.

Перейти на страницу:

Запись в текстовый файл

Чтобы увидеть класс 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(&quot;reminders.txt&quot;))

{

  writer.WriteLine(&quot;Don't forget Mother's Day this year...&quot;);

  writer.WriteLine(&quot;Don't forget Father's Day this year...&quot;);

  writer.WriteLine(&quot;Don't forget these numbers:&quot;);

  for(int i = 0; i &lt; 10; i++)

  {

    writer.Write(i + &quot; &quot;);

  }

<b>  // Вставить новую строку.</b>

  writer.Write(writer.NewLine);

}

Console.WriteLine(&quot;Created file and wrote some thoughts...&quot;);

Console.ReadLine();

//File.Delete(&quot;reminders.txt&quot;);

После выполнения программы можете просмотреть содержимое созданного файла, который будет находиться в корневом каталоге проекта (Visual Studio Code) или в подкаталоге binDebugnet5.0 (Visual Studio). Причина в том, что при вызове CreateText() вы не указали абсолютный путь, а стандартным местоположением является текущий каталог выполнения сборки.

Чтение из текстового файла

Далее вы научитесь программно читать данные из файла, используя соответствующий тип StreamReader. Вспомните, что StreamReader является производным от абстрактного класса TextReader, который предлагает функциональность, описанную в табл. 20.9.

Расширьте текущий пример приложения с целью применения класса StreamReader, чтобы в нем можно было читать текстовые данные из файла reminders.txt:

(window.adrunTag = window.adrunTag || []).push({v: 1, el: 'adrun-4-390', c: 4, b: 390})

Console.WriteLine(&quot;***** Fun with StreamWriter/StreamReader *****n&quot;);

...

<b>// Прочитать данные из файла.</b>

Console.WriteLine(&quot;Here are your thoughts:n&quot;);

using(StreamReader sr = File.OpenText(&quot;reminders.txt&quot;))

{

  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(&quot;***** Fun with StreamWriter/StreamReader *****n&quot;);

<b>// Получить объект StreamWriter и записать строковые данные.</b>

using(StreamWriter writer = new StreamWriter(&quot;reminders.txt&quot;))

{

  ...

}

<b>// Прочитать данные из файла.</b>

using(StreamReader sr = new StreamReader(&quot;reminders.txt&quot;))

{

  ...

}

Несмотря на то что существование такого количества на первый взгляд одинаковых подходов к файловому вводу-выводу может сбивать с толку, имейте в виду,что конечным результатом является высокая гибкость. Теперь, когда вам известно, как перемещать символьные данные в файл и из файла с применением классов StreamWriter и StreamReader, давайте займемся исследованием роли классов StringWriter и StringReader.

Работа с типами StringWriter и StringReader

Классы StringWriter и StringReader можно использовать для трактовки текстовой информации как потока символов в памяти. Это определенно может быть полезно, когда нужно добавить символьную информацию к лежащему в основе буферу. Для иллюстрации в следующем проекте консольного приложения (StringReaderWriterApp) блок строковых данных записывается в объект StringWriter вместо файла на локальном жестком диске (не забудьте импортировать пространства имен System.IO и System.Text):

Перейти на страницу:
Комментариев (0)