FileInfo f5 = new FileInfо(@"C:\boot.ini");
StreamReader sreader = f5.OpenText();
// Использование объекта StreamReader.…
sreader.Close();
}
Чуть позже вы увидите, что тип StreamReader обеспечивает возможность чтения символьных данных из соответствующего файла.
Методы FileInfo.CreateText() и FileInfo.AppendText()
И последними интересующими нас на этот момент методами будут CreateText() и AppendText(), которые возвращают ссылку на StreamWriter, как показано ниже.
static void Main(string[] args) {
…
FileInfo f6 = new FileInfo(@"C:\Test5.txt");
StreamWriter swriter = f6.CreateText();
// Использование объекта StreamWriter….
swriter.Close();
FileInfo f7 = new FileInfo(@"C:\FinalTest.txt");
StreamWriter swriterAppend = f7.AppendText();
// Использование объекта StreamWriter…
swriterAppend.Close();
}
Вы должны догадаться сами, что тип StreamWriter предлагает способ записи символьных данных в соответствующий файл.
Работа с типом File
Тип File предлагает функциональные возможности, почти идентичные возможностям типа FileInfo, но с помощью ряда статических членов. Подобно FileInfo, тип File предлагает методы AppendText(), Create(), CreateText(), Open(), OpenRead(), OpenWrite() и OpenText(). Во многих случаях типы File и
FileStream оказываются взаимозаменяемыми. Так, в каждом из предыдущих примеров вместо FileStream можно использовать тип File.
static void Main(string[] args) {
// Получение объекта FileStream с помощью File.Create() .
FileStream fs = File.Create(@"C:\Test.dat");
fs.Close();
// Получение объекта FileStream с помощью File.Open().
FileStream fs2 = File.Open(@"C:\Test2.dat", FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.None);
fs2.Close();
// Получение объекта FileStream с доступом только для чтения.
FileStream readOnlyStream = File.OpenRead(@"Test3.dat");
readOnlyStream.Close();
// Получение объекта FileStream с доступом только для записи.
FileStream writeOnlyStream = File.OpenWrite(@"Test4.dat");
writeOnlyStream.Close();
// Получение объекта StreamReader.
StreamReader sreader = Filе.OpenText(@"C:\boot.ini");
sreader.Close();
// Получение нескольких объектов StreamWriter.
StreamWriter swriter = File.CreateText(@"C:\Test3.txt");
swriter.Close();
StreamWriter swriterAppend = File.AppendText(@"C:\FinalTest.txt");
swriterAppend.Close();
}
Новые члены File в .NET 2.0
В отличие от FileInfo, тип File поддерживает (в .NET 2.0) несколько своих собственных уникальных членов, описания которых приводятся в табл. 16.5. С помощью этих членов можно существенно упростить процессы чтения и записи текстовых данных.
Таблица 16.5. Методы типа File