FileInfo - класс

  • docx
  • 18.11.2021
Публикация на сайте для учителей

Публикация педагогических разработок

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала Л2-002156.docx

FileInfo - класс

Предоставляет методы экземпляра для создания, копирования, уда- ления, перемещения и открытия файлов, а также помогает при создании объектов FileStream.

 

[Serializable]

public sealed class FileInfo : FileSystemInfo

 

Открытые конструкторы

FileInfo - конст- руктор

Инициализирует новый экземпляр класса FileInfo, действующего в качестве обертки для пу- ти файла.

 

Открытые свойства

Attributes (унаследовано FileSystemInfo)

 

от

Возвращает  или   устанавливает  FileAttributes

для текущего класса FileSystemInfo.

CreationTime (унаследовано

от FileSystemInfo)

Возвращает или устанавливает время создания текущего объекта FileSystemInfo.

CreationTimeUtc (унаследовано от FileSystemInfo)

Возвращает или устанавливает временя созда- ния текущего объекта FileSystemInfo в формате всеобщего скоординированного времени (UTC).

Directory

Возвращает экземпляр родительской папки.

DirectoryName

Возвращает путь к папке.

строку,   описывающую   полный

Exists

Возвращает значение, показывающее, сущест- вует ли файл. Переопределен.

Extension  (унас-

ледовано

от FileSystemInfo)

Возврат строки, содержащей расширение фай-

ла.

FullName

ледовано

(унас-

Возвращает полный путь к папке или файлу.


от FileSystemInfo)

 

LastAccessTime (унаследовано от FileSystemInfo)

Возвращает или устанавливает время послед- него доступа к текущему файлу или папке.

 

LastAccessTimeUtc (унаследовано

от FileSystemInfo)

Возвращает или устанавливает дату и время последнего доступа к заданному файлу или папке в формате всеобщего скоординированного време- ни (UTC).

LastWriteTime (унаследовано от FileSystemInfo)

Возвращает или устанавливает время послед- ней операции записи в текущий файл или папку.

LastWriteTimeUtc (унаследовано

от FileSystemInfo)

Возвращает или устанавливает время послед- ней операции записи в текущий файл или папку в формате всеобщего скоординированного времени (UTC).

Length

Возвращает размер текущего файла.

Name

Возвращает имя файла. Переопределен.

Открытые методы

AppendText

Создает объект StreamWriter, добавляющий текст в файл, описываемый этим экземпляром FileInfo.

CopyTo

Перегружен. Копирование существующего файла в новый файл.

Create

Создание файла.

CreateObjRef  (унас-

ледовано

от MarshalByRefObject)

Создает объект, который содержит всю не- обходимую информацию для создания прокси-

сервера, используемого для коммуникации с удаленными объектами.

CreateText

Создание объекта  StreamWriter, который записывает новый текстовый файл.

Delete

Удаление файла без возможности восста- новления. Переопределен.

Equals (унаследовано

Object)

 

от

Перегружен. Определяет, равны ли два эк- земпляра Object.

GetHashCode (унаследовано

Object)

 

от

Служит хеш-функцией для конкретного ти- па, пригоден для использования в алгоритмах хеширования и структурах данных, например в хеш-таблице.

GetLifetimeService (унаследовано от MarshalByRefObject)

Извлекает служебный объект текущего срока действия, который управляет средства- ми срока действия данного экземпляра.

GetObjectData (унаследовано

от FileSystemInfo)

Устанавливает объект SerializationInfo с именем файла и дополнительными сведениями об исключении.

GetType (унаследовано

 

от

Возвращает Type текущего экземпляра.


Object)

 

 

InitializeLifetimeService (унаследовано от MarshalByRefObject)

Получает служебный объект срока дейст- вия, для управления средствами срока дейст- вия данного экземпляра.

MoveTo

Перемещение заданного файла в новое по- ложение с возможностью задания нового име- ни файла.

Open

Открывается файл с различными правами доступа на чтение-запись и совместное ис- пользование. Перегружен.

OpenRead

Создает разрешенный только для чтения

FileStream.

OpenText

Создает StreamReader с кодировкой UTF-8, который выполняет считывание из сущест- вующего текстового файла.

OpenWrite

Создает разрешенный только для записи объект FileStream.

Refresh    (унаследо-

вано

от FileSystemInfo)

Обновление состояния объекта.

ToString

Переопределен. Возвращает полный путь как строку.

Пример.

using System; using System.IO;

 

class Test

{

public static void Main ()

{

string path = @"c:\temp\MyTest.txt";

 

if ( !File.Exists (path) )

{

// Создать файл для записи и освободить ресурсы

// с помощью Dispose () после выхода из блока using using (StreamWriter sw = File.CreateText (path))

{

sw.WriteLine ("Hello"); sw.WriteLine ("And"); sw.WriteLine ("Welcome");

}

}

 

// Открыть файл для чтения.

using (StreamReader sr = File.OpenText  (path))

{

string s = "";

while ( (s = sr.ReadLine ()) != null)


{

Console.WriteLine (s);

}

}

 


try

{


 

string path2 = path + "temp";

// Путь к несуществующему файлу. Исключение не возбуждается. File.Delete (path2);


 

// Копировать файл.

File.Copy (path, path2);

Console.WriteLine ("{0} был скопирован в {1}.", path, path2);

 

// Удалить только что созданный файл.

File.Delete (path2);

Console.WriteLine ("{0} был успешно удален.", path2);

}

catch (Exception e)

{

Console.WriteLine ("ОШИБКА: {0}", e);

}

}

}

 

Тот же пример без оператора using

using System; using System.IO;

 

class Test

{

public static void Main ()

{

string path = @"c:\temp\MyTest.txt";

 

if (!File.Exists (path))

{

// Создать файл для записи StreamWriter sw = File.CreateText (path); sw.WriteLine ("Hello");

sw.WriteLine ("And"); sw.WriteLine ("Welcome"); sw.Close ();

}

 

// Open the file to read from. StreamReader sr = File.OpenText (path); string s = "";

while ( (s = sr.ReadLine ()) != null)

{

Console.WriteLine (s);

}

sr.Close ();


try

{

string path2 = path + "temp";

// Путь к несуществующему файлу. File.Delete (path2);

 

// Копировать файл. File.Copy (path, path2);

Console.WriteLine ("{0} был скопирован в {1}.", path, path2);

 

// Удалить только что созданный файл. File.Delete (path2);

Console.WriteLine ("{0} был успешно удален.", path2);

}

catch (Exception e)

{

Console.WriteLine ("ОШИБКА: {0}", e);

}

}

}