f2.Delete();
Эта версия перегруженного метода Open()
FileMode (описание его членов приведено в табл. 20.5):public enum FileMode
{
CreateNew,
Create,
Open,
OpenOrCreate,
Truncate,
Append
}
Второй параметр метода Open()
FileAccess — служит для определения поведения чтения/записи лежащего в основе потока:public enum FileAccess
{
Read,
Write,
ReadWrite
}
Наконец, третий параметр метода Open()
FileShare — указывает, каким образом файл может совместно использоваться другими файловыми дескрипторами:public enum FileShare
{
None,
Read,
Write,
ReadWrite,
Delete,
Inheritable
}
Методы FileInfо.OpenRead() и FileInfо.OpenWrite()
Метод FileInfо.Open()
FileInfо также предлагает методы OpenRead() и OpenWrite(). Как и можно было ожидать, указанные методы возвращают подходящим образом сконфигурированный только для чтения или только для записи объект FileStream без необходимости в предоставлении значений разных перечислений. Подобно FileInfо.Create() и FileInfо.Open() методы OpenRead() и OpenWrite() возвращают объект FileStream.Обратите внимание, что метод OpenRead()
FileStream, так что он может использоваться методом OpenRead():f3.Create().Close();
Вот полный пример:
var fileName = $@"C{Path.VolumeSeparatorChar}
{Path.DirectorySeparatorChar}Test.dat";
...
// Получить объект FileStream с правами только для чтения.
FileInfo f3 = new FileInfo(fileName);
// Перед использованием OpenRead() файл должен существовать.
f3.Create().Close();
using(FileStream readOnlyStream = f3.OpenRead())
{
// Использовать объект FileStream...
}
f3.Delete();
// Теперь получить объект FileStream с правами только для записи.
FileInfo f4 = new FileInfo(fileName);
using(FileStream writeOnlyStream = f4.OpenWrite())
{
// Использовать объект FileStream...
}
f4.Delete();
Метод FileInfо.OpenText()
Еще одним членом типа FileInfo
OpenText(). В отличие от Create(), Open(), OpenRead() и OpenWrite() метод OpenText() возвращает экземпляр типа StreamReader, а не FileStream. Исходя из того, что на диске С: имеется файл по имени boot.ini, вот как получить доступ к его содержимому:var fileName = $@"C{Path.VolumeSeparatorChar}
{Path.DirectorySeparatorChar}Test.dat";
...
// Получить объект StreamReader.
// Если вы работаете не на машине с Windows,
// тогда измените имя файла надлежащим образом.
FileInfo f5 = new FileInfo(fileName);
// Перед использованием OpenText() файл должен существовать.
f5.Create().Close();
using(StreamReader sreader = f5.OpenText())
{
// Использовать объект StreamReader...
}
f5.Delete();
Вскоре вы увидите, что тип StreamReader
Методы FileInfo.CreateText() и FileInfo.AppendText()
Последними двумя методами, представляющими интерес в данный момент, являются CreateText()
AppendText(). Оба они возвращают объект StreamWriter:var fileName = $@"C{Path.VolumeSeparatorChar}
{Path.DirectorySeparatorChar}Test.dat";
...