Читаем C# 4.0 полное руководство - 2011 полностью

Производными от классаStreamявляются несколько конкретных классов байтовых потоков. Эти классы определены в пространстве именSystem. 10и перечислены ниже.

Класс потока

Описание

BufferedStream

Заключает в оболочку байтовый поток и добавляет буфериза

цию. Буферизация, как правило, повышает производительность

FileStream

Байтовый поток, предназначенный для файлового ввода-

вывода

MemoryStream

Байтовый поток, использующий память для хранения данных

UnmanagedMemoryStream

Байтовый поток, использующий неуправляемую память для

хранения данных

В среде NET Framework поддерживается также ряд других конкретных классов потоков, в том числе для ввода-вывода в сжатые файлы, сокеты и каналы. Кроме того, можно создать свои собственные производные классы потоков, хотя для подавляющего числа приложений достаточно и встроенных потоков.

Классы-оболочки символьных потоков

Для создания символьного потока достаточно заключить байтовый поток в один из классов-оболочек символьных потоков. На вершине иерархии классов символьных потоков находятся абстрактные классыTextReaderиTextWriter.Так, классTextReaderорганизует ввод, а классTextWriter— вывод. Методы, определенные в обоих этих классах, доступны для всех их подклассов. Они образуют минимальный набор функций ввода-вывода, которыми должны обладать все символьные потоки.

В табл. 14.3 перечислены методы ввода, определенные в классеTextReader.В целом, эти методы способны генерировать исключениеIOExceptionпри появлении ошибки ввода, а некоторые из них — исключения других типов. Особый интерес вызывает методReadLine, предназначенный для ввода целой текстовой строки, возвращая ее в виде объекта типаstring.Этот метод удобен для чтения входных данных, содержащих пробелы. В классеTextReaderимеется также методClose, определяемый следующим образом.

Этот метод закрывает считывающий поток и освобождает его ресурсы.

В классеTextWriterопределены также варианты методовWrite иWriteLine ,предназначенные для вывода данных всех встроенных типов. Ниже в качестве примера перечислены лишь некоторые из перегружаемых вариантов этих методов.

virtual void Close virtual void Flush

МетодFlush организует вывод в физическую среду всех данных, оставшихся в выходном буфере. А методClose закрывает записывающий поток и освобождает его ресурсы.

КлассыTextReaderиTextWriterреализуются несколькими классами символьных потоков, включая и те, что перечислены ниже. Следовательно, в этих классах потоков предоставляются методы и свойства, определенные в классахTextReaderиTextWriter.

Двоичные потоки

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

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных