Дополнительные члены File

Тип File также поддерживает несколько уникальных членов, которые могут значительно упростить процесс чтения и записи текстовых данных.

ReadAllBytes() Открывает файл, читает двоичные данные как массив байт, затем закрывает файл
ReadAllLines() Открывает файл, читает текстовые данные как массив строк, затем закрывает файл
ReadAllText() Открывает файл, читает текстовые данные одной строкой, затем закрывает файл
WriteAllBytes() Открывает указанный файл, записывает в него байтовый массив и закрывает файл
WriteAllLines() Открывает указанный файл, записывает в него массив строк и закрывает файл
WriteAllText() Открывает файл, записывает в него указанную строку и закрывает файл

Потоковый ввод-вывод

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

В абстрактном классе System.Stream определен набор членов, которые обеспечивают поддержку синхронного и асинхронного взаимодействия с хранилищем (например, файлом или областью памяти):

CanRead CanWrite CanSeek Определяют, поддерживает ли текущий поток чтение, поиск и/или запись
Close() Закрывает текущий поток и освобождает все его ресурсы (напрмер, файловые дескрипторы). Внутренне этот метод является псевдонимом Dispose()
Flush() Если для вывода используется буфер, производит запись буфера и его очистку. Если поток не реализует буфер, метод не делает ничего
Length Возвращает длину потока в байтах
Position Определяет текущую позицию в потоке
Read() ReadByte() Читает последовательность байт (или одиночный байт) из текущего потока и перемещает текущую позицию потока на количество прочитанных байтов
Seek() Устанавливает позицию в текущем потоке
SetLength() Устанавливает длину текущего потока
Write() WriteByte() Пишет последовательность байт (или одиночный байт) в текущий поток и перемещает текущую позицию на количество записанных байтов

Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: