Метод FileInfo.Open()

Метод FileInfo.Open()

Метод FileInfо.Open() можно использовать для того, чтобы открывать существующие файлы и создавать новые с более точными характеристиками, чем при использовании FileInfo.Create(). В результате вызова Open() возвращается объект FileStream. Рассмотрите следующий пример.

static void Main(string[] args) {

 …

 // Создание нового файла с помощью FileInfo.Open().

 FileInfo f2 = new FileInfo(@"C:Test2.dat");

 FileStream fs2 = f2.Open(FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.None);

 // Использование объекта FileStream.…

 // Закрытие файлового потока.

 fs2.Close();

}

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

public enum FileMode {

 // Дает операционной системе указание создать новый файл.

 // Если файл уже существует, генерируется System.IO.IOException.

 CreateNew,

 // Дает операционной системе указание создать новый файл,

 // Если файл уже существует, он будет переписан.

 Create,

 Open,

 // Дает операционной системе указание открыть файл,

 // если он существует, иначе следует создать новый файл.

 OpenOrCreate,

 Truncate,

 Append

}

Второй параметр, значение из перечня FileAccess, используется для определения характеристик чтения/записи в соответствующем потоке.

public enum FileAccess {

 Read,

 Write,

 ReadWrite

}

Наконец, третий параметр, FileShare, указывает возможности совместного использования файла другими дескрипторами файла. Вот как выглядит соответствующий перечень.

public enum FileShare {

 None,

 Read,

 Write,

 ReadWrite

}

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

5.1 OPEN

Из книги Архитектура операционной системы UNIX автора Бах Морис Дж

5.1 OPEN Вызов системной функции open (открыть файл) — это первый шаг, который должен сделать процесс, чтобы обратиться к данным в файле. Синтаксис вызова функции open:fd = open(pathname, flags, modes);где pathname — имя файла, flags указывает режим открытия (например, для чтения или записи), а modes


10.1.2.1 Open

Из книги Язык программирования С# 2005 и платформа .NET 2.0. [3-е издание] автора Троелсен Эндрю

10.1.2.1 Open При открытии устройства ядро следует той же процедуре, что и при открытии файлов обычного типа (см. раздел 5.1), выделяя в памяти индексы, увеличивая значение счетчика ссылок и присваивая значение точки входа в таблицу файлов и пользовательского дескриптора файла.


Работа с классом FileInfo

Из книги Photoshop. Лучшие фильтры автора Бондаренко Сергей

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


Методы FileInfo.OpenRead() и FileInfo.OpenWrite()

Из книги UNIX: взаимодействие процессов автора Стивенс Уильям Ричард

Методы FileInfo.OpenRead() и FileInfo.OpenWrite() Хотя метод FileInfo.Open() и обладает очень гибкими возможностями получения дескриптора файла, класс FileInfo также предлагает члены с именами OpenRead() и OpenWrite(). Как вы можете догадаться, эти методы возвращают должным образом сконфигурированный только


Метод FileInfo.OpenText()

Из книги MySQL: руководство профессионала автора Паутов Алексей В

Метод FileInfo.OpenText() Другим членом типа FileInfo, связанным с открытием файлов, является OpenText(). В отличие от Create(), Open(), OpenRead() и OpenWrite(), метод OpenText() возвращает экземпляр типа StreamReader, а не типа FileStream.static void Main(string[] args) { … // Получение объекта StreamReader. FileInfo f5 = new FileInfо(@"C:oot.ini"); StreamReader sreader


Методы FileInfo.CreateText() и FileInfo.AppendText()

Из книги TCP/IP Архитектура, протоколы, реализация (включая IP версии 6 и IP Security) автора Фейт Сидни М

Методы FileInfo.CreateText() и FileInfo.AppendText() И последними интересующими нас на этот момент методами будут CreateText() и AppendText(), которые возвращают ссылку на StreamWriter, как показано ниже.static void Main(string[] args) { … FileInfo f6 = new FileInfo(@"C:Test5.txt"); StreamWriter swriter = f6.CreateText(); // Использование объекта


Rip Open (Разрыв и открытие)

Из книги Программирование на языке Ruby [Идеология языка, теория и практика применения] автора Фултон Хэл

Rip Open (Разрыв и открытие) Фильтр Rip Open (Разрыв и открытие) дополняет фильтры Xenofex 2, имитирующие поведение бумаги (Crumple (Мятый) и Burnt Edges (Опаленные края)). Фильтр Rip Open (Разрыв и открытие) позволяет «разорвать» изображение в указанном месте. При этом картинка будет не просто


The Open Group

Из книги Разработка приложений в среде Linux. Второе издание автора Джонсон Майкл К.

The Open Group The Open Group (Открытая группа) была сформирована в 1996 году объединением X/Open Company (основана в 1984 году) и Open Software Foundation (OSF, основан в 1988 году). Эта группа представляет собой международный консорциум производителей и потребителей из промышленности, правительства и


5.2.9.2. Инструкция OPEN

Из книги Linux программирование в примерах автора Роббинс Арнольд

5.2.9.2. Инструкция OPEN OPEN cursor_nameЭта инструкция открывает предварительно объявленный


1.9 Open System Interconnection

Из книги Реконизм. Как информационные технологии делают репутацию сильнее власти, а открытость — безопаснее приватности автора Сименко Илья Александрович

1.9 Open System Interconnection Взаимодействие открытых систем (Open System Interconnection — OSI) стало результатом международных усилий по созданию компьютерных коммуникационных стандартов и базовых прикладных служб. Формально OSI разработана в рамках Международной организации по


20.6. Пример команды open

Из книги автора

20.6. Пример команды open Ниже показан пример кода, выполняющий следующие задачи: поиск неиспользуемой VC, запуск на ней оболочки, ожидание завершения оболочки, переключение обратно, а также освобождение памяти, выделенной под VC, по завершении программы. Программа open, входящая


4.6.3. Возвращаясь к open()

Из книги автора

4.6.3. Возвращаясь к open() Вы можете вспомнить объявление для open():int open(const char *pathname, int flags, mode_t mode);Ранее мы сказали, что при открытии файла для простого ввода/вывода мы можем игнорировать аргумент mode. Хотя, посмотрев на creat(), вы, возможно, догадались, что open() также может


X/Open

Из книги автора

X/Open В 1984 году ряд европейских компьютерных компаний сформировал некоммерческую организацию, получившую название X/Open. Название полностью отражает цель этой организации — разработку общего набора интерфейсов операционной системы, согласованного между различными


Функция open(2)

Из книги автора

Функция open(2) Открывает указанный файл для чтения или записи и имеет следующий вид:#include <fcntl.h>int open(const char *path, int oflag, mode_t mode);Первый аргумент (path) является указателем на имя файла. Это имя может быть как абсолютным (начинающимся с корневого каталога /), так и относительным