![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Класс Filelnfo ⇐ ПредыдущаяСтр 2 из 2
Класс Filelnfo предназначен для организации доступа к физическому файлу, который содержится на жестком диске компьютера. Он позволяет получать информацию об этом файле (например, о времени его создания, размере, атрибутах и т. п.), а также производить различные операции, например, по созданию файла или его удалению. Класс FileInfo наследует члены класса FileSystemInfo и содержит дополнительный набор членов, который приведен в следующей таблице:
Как мы видим, большинство методов FileInfo возвращает объекты (FIleStream, StreamWriter, StreamReader и т. п.), которые позволяют различным образом взаимодействовать с файлом, например, производить чтение или запись в него. Приемы работы с данными потоками нам уже известны. Поэтому рассмотрим другие возможности класса FileInfo.
using System; using System.Text; using System.IO; //для работы с файловым вводом-выводом using System.Text.RegularExpressions;
namespace MyProgram { class Program { static void Main() { //создаем новый файл и связываем с ним строковый поток FileInfo f = new FileInfo(" text.txt"); StreamWriter fOut = new StreamWriter(f.Create()); //записываем в файл данные и закрываем строковый поток, // при этом связь с физическим файлом для f не рвется fOut.WriteLine(" ОДИН ДВА ТРИ..."); fOut.Close(); //получаем информацию о файле Console.WriteLine(" *******" +f.Name File Inf+" **************"); Console.WriteLine(" File size: {0}", f.Length); Console.WriteLine(" Creation: {0}", f.CreationTime); Console.WriteLine(" Attributes: {0}", f.Attributes.ToString()); } } }
Рассмотрим следующий пример:
static void Main() { FileInfo f = new FileInfo(@" d: \prim\letter\letter1.txt"); f.CopyTo(@" d: \prim\bmp\letter.txt"); Directory.CreateDirectory(@" d: \prim\archives"); f.MoveTo(@" d: \prim\archives\letter1.txt"); f = new FileInfo(@" d: \prim\letter\letter2.txt"); f.Delete(); }
Рассмотрим еще один пример по удалению файлов:
static void printFile(FileInfo file) { Console.WriteLine(" ***** " +file.Name+" *****"); Console.WriteLine(" File size: {0}", file.Length); Console.WriteLine(" Creation: {0}", file.CreationTime); Console.WriteLine(" Attributes: {0}", file.Attributes.ToString()); }
static void Main(string[] args) { DirectoryInfo dir = new DirectoryInfo(@" d: \prim\bmp"); FileInfo[] files = dir.GetFiles(); if (files.Length! =0) { Console.WriteLine(" Найдено {0} файла", files.Length); foreach (FileInfo f in files) { printFile(f); f.Delete(); } Console.WriteLine(" \nТеперь в каталоге содержится {0} файлов и можно его удалить", dir.GetFiles().Length); dir.Delete(); } }
|