Основы C# Урок 56. Класс FileInfo
Можно считать, что класс FileInfo представляет из себя
файл, находящийся на жестком диске. С помощью этого класса
можно производить стандарные операции с файлом -
переименование, перемещение, удаление, создание и др. Кроме
того, можно получить значения характеристик файла (время
последнего доступа, размер и др.), а также атрибуты файла
(скрытый, системный и др.).
Вот пример работы с этим классом: // Читаем информацию о файле.
FileInfo fi = new FileInfo(@"C:\tmp\1.txt");
// Выводим информацию о файле.
// Полное имя.
Console.WriteLine(fi.FullName);
// Только имя файла.
Console.WriteLine(fi.Name);
// Полный путь без имени файла.
String fullPath = fi.DirectoryName;
Console.WriteLine(fullPath);
// Переименовываем файл (путем перемещения
// в эту же папку под другим именем.
fi.MoveTo(fullPath + @"\qqq.txt");
// Создаем новый файл.
fi = new FileInfo(@"C:\tmp\2.txt");
FileStream fs = fi.Create();
// Закрываем поток, связанный с файлом.
fs.Close();
// Показываем время создания.
Console.WriteLine("Creation {0}", fi.CreationTime);
// Проверяем, существует ли файл.
if(fi.Exists)
{
// Удаляем файл.
fi.Delete();
}
Обратите внимание на строки: ...
// Закрываем поток, связанный с файлом.
fs.Close();
...
Если ее не добавить, то несколькими строчками ниже мы не
сможем удалить наш файл. Дело в том, что с нашим файлом в
результате вызова метода Create связывается файловый поток, и
файл считается используемым приложением. Для освобождения
файла мы и должны закрыть этот фаловый поток. |