Книга: ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание
Новые члены File в .NET 2.0
Новые члены File в .NET 2.0
В отличие от FileInfo, тип File поддерживает (в .NET 2.0) несколько своих собственных уникальных членов, описания которых приводятся в табл. 16.5. С помощью этих членов можно существенно упростить процессы чтения и записи текстовых данных.
Таблица 16.5. Методы типа File
Метод | Описание |
---|---|
ReadAllBytes() | Открывает указанный файл, возращает двоичные данные в виде массива байтов, а затем закрывает файл |
ReadAllLines() | Открывает указанный файл, возращает символьные данные в виде массива строк, а затем закрывает файл |
ReadAllText() | Открывает указанный файл, возращает символьные данные в виде System.String, а затем закрывает файл |
WriteAllBytes() | Открывает указанный файл, записывает массив байтов, а затем закрывает файл |
WriteAllLines() | Открывает указанный файл, записывает массив строк, а затем закрывает файл |
WriteAllText() | Открывает указанный файл, записывает символьные данные, а затем закрывает файл |
При использовании этих новых методов типа File для чтения и записи пакетов данных потребуется всего несколько строк программного кода. Более того, каждый из указанных новых членов автоматически закрывает соответствующий дескриптор файла, например:
class Program {
static void Main(string[] args) {
string[] myTasks = { "Прочистить сток в ванной", "Позвонить Саше и Сереже", "Позвонить родителям", "Поиграть с ХВох" };
// Записать все данные в файл на диске C.
File.WriteAllLines(@"C:tasks.txt", myTasks);
// Прочитать все снова и напечатать.
foreach (string task in File.ReadAllLines(@"C:tasks.txt")) {
Console.WriteLine("Нужно сделать: {0}", task);
}
}
}
Очевидно, когда вы хотите быстро получить дескриптор файла, тип File избавит вас от необходимости ввода нескольких лишних строк. Однако преимущество предварительного создания объекта FileInfo заключается в том, что тогда вы получаете возможность исследовать соответствующий файл с помощью членов абстрактного базового класса FileSystemInfо.
static void Main(string[] args) {
// Вывод информации о файле boot.ini
// с последующим открытием доступа только для чтения.
FileInfo bootFile = new FileInfо(@"C:boot.ini");
Console.WriteLine(bootFile.CreationTime);
Console.WriteLine(bootFile.LastAccessTime);
FileStream readOnlyStream = bootFile.OpenRead();
readOnlyStream.Close();
}
- Shared Cache file
- 2.3. Неценовые методы стимулирования
- HR-брендинг: Работа с поколением Y, новые инструменты для коммуникации, развитие корпоративной культуры и еще 9 эффектив...
- Улучшенный протокол локальных соединений (XNET)
- Новые ключевые слова
- Новые функции API для работы с Blob и массивами
- Безопасность внешних таблиц. Параметр EXTERNAL FILE DIRECTORY
- Chapter 13. rc.firewall file
- Chapter 16. Commercial products based on Linux, iptables and netfilter
- NETMAP target
- Internet Service Providers who use assigned IP addresses
- 4.3.3. Makefile Targets