14. ИСПОЛЬЗОВАНИЕ СРЕДСТВ ВВОДА – ВЫВОДА
14.1. Понятие потоков данных. Пространство имен System.IO
В Windows, как и в большинстве современных операционных систем, для операций ввода-вывода используются потоки данных. Поток данных (stream) – это абстракция, позволяющая одинаково обращаться к разнотипным источникам данных. Источником данных может выступать файл, сетевое соединение, сокет, порт ввода-вывода, и т.д.
Для работы с потоками в среде CLR применяется абстрактный класс System.IO.Stream, предоставляющий доступ к последовательности байт из какого-либо не конкретизированного источника. Классы, наследующие от класса Stream, обеспечивают более специфическую, конкретную функциональность – работу с файлами (класс FileStream), памятью (класс MemoryStream) и сетью (класс NetworkStream).
В классе Stream определена базовая для всех потоков функциональность, т.е. описаны те методы и свойства которые они должны реализовать для обеспечения нормальной работы по вводу-выводу информации. В целом потоки поддерживают операции чтения, записи, а также операции позиционирования. Конечно, не все потоки поддерживают все три операции, например, нельзя записывать в файл открытый только для чтения, или невозможно производить позиционирование в сетевых потоках.
Перечислим основные свойства и методы класса Stream.
CanRead
|
Определяет, будет ли данный поток поддерживать чтение
|
CanSeek
|
Определяет, будет ли данный поток поддерживать поиск
|
CanWrite
|
И соответственно, будет ли поток поддерживать запись
|
Close()
|
Закрывает текущий поток и освобождает ресурсы
|
Flush()
|
Записывает все данные из буфера в соответствующий источник данных. Освобождает буфер
|
|
Do'stlaringiz bilan baham: |