Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
c#_Presentation_11.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
740.35 Кб
Скачать

If (Path.HasExtension(path1))

Console.WriteLine("{0} имеет расширение.", path1);

If (!Path.HasExtension(path2))

Console.WriteLine("{0} не имеет расширения.", path2);

If (!Path.IsPathRooted(path3))

Console.WriteLine("Строка {0} не содержит информации о " +

"корне.", path3);

Console.WriteLine("Полный путь к {0} - {1}.", path3,

Path.GetFullPath(path3));

Console.WriteLine("{0} - местоположение временных файлов.",

Path.GetTempPath());

Console.WriteLine("Файл {0} доступен для использования.",

Path.GetTempFileName());

Console.ReadLine();

}

}

/* Вывод:

В пути 'c:\temp\MyTest.txt' расширение изменено на

'c:\temp\MyTest.dat'.

Файл 'MyTest.txt' находится в папке 'c:\temp'.

c:\temp\MyTest.txt имеет расширение.

c:\temp\MyTest не имеет расширения.

Строка temp не содержит информации о корне.

Полный путь к temp - C:\Documents and Settings\Guest\Local

Settings\Application Data\Temporary Projects\ConsoleApplication1

\bin\Debug\temp.

C:\Documents and Settings\Guest\Local Settings\Temp\ -

местоположение временных файлов.

Файл C:\Documents and Settings\Guest\Local Settings\Temp\

tmp3D.tmp доступен для использования.

*/

11.6. Использование класса System.Io.FileInfo для работы с файлами

(http://msdn.microsoft.com/ru-ru/library/system.io.fileinfo.aspx)

Таблица 11.11. Основные поля, свойства и методы класса FileInfo из пространства имен System.IO

Имя

Описание

Поля

FullPath

Представляет полный путь к каталогу или файлу.

OriginalPath

Первоначально заданный пользователем относительный или абсолютный путь.

Свойства

Attributes

Получает или задает атрибуты для текущего файла или каталога. Значение этого свойства представляет сочетание флагов атрибутов файла (из перечисления FileAttributes, таблица 11.7).

CreationTime

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

Directory

Получает экземпляр родительского каталога файла.

DirectoryName

Получает строку, представляющую полный путь к каталогу.

Exists

Получает значение (типа bool), показывающее, существует ли файл (true) или нет (false).

Extension

Получает строку, содержащую расширение файла.

FullName

Получает строку, содержащую полный путь к каталогу или файлу.

IsReadOnly

Возвращает или задает значение (типа bool), определяющее, является ли текущий файл доступным только для чтения (true) или нет (false).

LastAccessTime

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

LastWriteTime

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

Length

Получает размер текущего файла в байтах.

Name

Получает строку, содержащую имя и расширение файла.

Методы

AppendText(sf);

Добавляет в существующий файл (sf, объект StreamWriter) текст в кодировке UTF-8.

CopyTo(sf2);

CopyTo(sf2,w);

Копирует существующий текущий файл (sf1) в новый файл (sf2) с возможностью перезаписи (w) или без нее. При возможной перезаписи аргумент w равен true, если конечный файл можно перезаписать, в противном случае – false.

Create();

Создает новый файл (объект FileStream). При этом по умолча-нию используются следующие значения перечислений (таблица 11.8): FileMode.Create, FileAccess.ReadWrite и FileShare.None .

CreateText();

Создает файл (объект StreamWriter) для записи текста в кодировке UTF-8.

Delete();

Удаляет файл без возможности восстановления. Если указанный файл не существует, исключение не создается.

MoveTo(sf2);

Перемещает заданный текущий файл в новое место (sf2) и разрешает его переименование.

Open(md);

Open(md,access);

Open(md,access,shr);

Открывает файл (объект FileStream). Аргументы определяют:

md – режим доступа к файлу (перечисление FileMode, таблица 11.8);

access – тип доступа к файлу (перечисление FileAccess, таблица 11.8);

shr – тип разрешения доступа к файлу другим процессам (перечисление FileShare, таблица 11.8).

OpenRead();

Открывает для чтения существующий файл (объект FileStream). При этом по умолчанию используются следующие значения перечислений (таблица 11.8): FileMode.Open , FileAccess.Read и FileShare.Read .

OpenText();

Открывает для чтения существующий файл (объект StreamWriter), содержащий текст в кодировке UTF-8.

OpenWrite();

Открывает для записи существующий файл (объект FileStream) или создает новый. При этом по умолчанию используются следующие значения перечислений (таблица 11.8): FileMode.OpenOrCreate , FileAccess.Write и FileShare.None .

Refresh();

Обновляет состояние объекта. Этот метод рекомендуется вызывать перед попыткой получения сведений об атрибутах, иначе сведения могут оказаться устаревшими.

Replace(sf1,sf2);

Заменяет содержимое одного файла (sf1) содержимым текущего файла, удаляя исходный файл (sf1) и создавая резервную копию (sf2) замененного файла.

ToString();

Возвращает строку, содержащую путь.

Пример 11.11. Использование методов Exists, CreateText, OpenText, CopyTo, Delete класса FileInfo для создания и открытия текстового файла, записи в него, затем для чтения из него, и, наконец, копирования и удаления файла.

using System;

using System.IO;

class TestFileInfo

{ public static void Main()

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

FileInfo fi1 = new FileInfo(path);

// Создание файла для записи, если он не существовал.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]