Книга: ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание

Метод 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
}

Оглавление книги


Генерация: 1.969. Запросов К БД/Cache: 3 / 0
поделиться
Вверх Вниз