Файлы
Тип-одиночка Стд::ВводВывод::Файлы::Файлы Базовые типы: Объект |
Иерархия типа
graph BT;
Файлы-->Объект;
Предназначен для работы с файлами. Содержит базовые действия над файлами как над объектами.
Сравнение ссылочное
Свойства
СимволРазделителя
ТолькоЧтение СимволРазделителя: Строка |
Разделитель, используемый для разделения каталогов. Символ зависит от используемой операционной системы:
- Windows -
"\"
, - Linux -
"/"
, - macOS -
"/"
.
Методы
КаталогПустой
Определяет, является ли каталог Путь
пустым.
Исключения
ИсключениеДоступаКФайлу - если недостаточно прав на чтение Путь
.
ИсключениеНедопустимыйАргумент - указан некорректный путь.
Найти
Найти(
Путь: Файл|Строка,
НастройкиПоиска: НастройкиПоискаФайлов
): ЧитаемыйМассив<Файл>
Осуществляет поиск ссылок, файлов и каталогов по заданным критериям поиска НастройкиПоиска
в указанном каталоге Путь
. Возвращает результат поиска или пустой список, если Путь
не является каталогом.
Исключения
ИсключениеФайловойСистемы - если каталог Путь
не существует.
ИсключениеНедопустимыйАргумент - указан некорректный путь.
Примеры
метод Найти(): ЧитаемыйМассив<Файл>
// Поиск файлов с расширением txt и размером от 100 кб, которые были созданы за последний час
знч НастройкиПоиска = новый НастройкиПоискаФайлов()
НастройкиПоиска
.ИмяСодержит(".txt")
.Создано(Момент.Сейчас() - 1ч, Момент.Сейчас())
.Размер(100кб)
возврат Файлы.Найти("C:/Folder", НастройкиПоиска)
;
Переименовать
Устанавливает новое имя НовоеИмя
файлу Путь
. Возвращает файл с новым именем.
Исключения
ИсключениеФайловойСистемы - если файл Путь
не найден или файл с именем НовоеИмя
уже существует.
ИсключениеДоступаКФайлу - если у текущего пользователя недостаточно прав на чтение Путь
или у текущего пользователя недостаточно прав на запись НовоеИмя
.
ИсключениеНедопустимыйАргумент - указан некорректный путь.
Примеры
метод Переименовать()
знч Файл = Файлы.Создать(новый Файл("test.txt", Файлы.ПолучитьДомашнийКаталог()))
знч ПереименованныйФайл = Файлы.Переименовать(Файл, "newname.txt")
знч Каталог = Файлы.СоздатьКаталог(новый Файл("Folder", Файлы.ПолучитьДомашнийКаталог()))
знч ПереименованныйКаталог = Файлы.Переименовать(Каталог, "NewNameFolder")
;
Переместить
Перемещает исходный файл Источник
в целевой файл Цель
с указанными настройками копирования НастройкиКопирования
. Создает недостающие каталоги по целевому пути. Возвращает перемещенный файл.
Исключения
ИсключениеФайловойСистемы - если файл Источник
не найден или файл Цель
уже существует (за исключением копирования с пропуском существующих в [НастройкиКопирования])
ИсключениеНедопустимыйАргумент - указан некорректный путь.
ИсключениеДоступаКФайлу - в случаях: * если недостаточно прав на запись Источник
или недостаточно прав на запись в Цель
, * если Цель
является не пустым каталогом, * если Цель
является каталогом и при выключенном параметре пропуска дочерних в [НастройкиКопирования], у текущего пользователя недостаточно прав на запись всех дочерних файлов.
ПолучитьДомашнийКаталог
ПолучитьДомашнийКаталог(): Файл
Возвращает домашний каталог пользователя.
Скопировать
Копирует файл Источник
в файл Цель
, используя настройки НастройкиКопирования
. Создает недостающие каталоги по целевому пути.
Исключения
ИсключениеФайловойСистемы - если файл Источник
не найден или файл с именем Цель
уже существует (за исключением копирования с пропуском существующих в [НастройкиКопирования]).
ИсключениеНедопустимыйАргумент - указан некорректный путь.
ИсключениеДоступаКФайлу - в следующих случаях: * у текущего пользователя недостаточно прав на чтение Источник
, * у текущего пользователя недостаточно прав на чтение или запись Цель
, * Цель
является символической ссылкой (за исключением случая, когда в Источник
и Цель
указан один и тот же файл), * Цель
является непустым каталогом, * Цель
является каталогом и при выключенном параметре пропуска дочерних в [НастройкиКопирования] у текущего пользователя нет прав на чтение и запись иерархии элементов.
Примеры
метод СкопироватьФайл()
// Объект существующего файла-источника с именем test.txt в домашнем каталоге
знч ФайлИсточник = новый Файл("test.txt", Файлы.ПолучитьДомашнийКаталог())
// Объект файл-назначения с именем testTarget.txt в каталоге C:/TargetFolder.
// Если каталог не существует, он будет создан
знч ФайлЦель = новый Файл("testTarget.txt", "C:/TargetFolder/")
// Настройки копирования для перезаписи существующего файла в целевом каталоге
знч НастройкиКопирования = новый НастройкиКопированияФайлов()
НастройкиКопирования.ПропускатьСуществующие(Ложь)
Файлы.Скопировать(ФайлИсточник, ФайлЦель, НастройкиКопирования)
;
метод СкопироватьКаталог()
// Объект каталога-источника, откуда будет скопировано все его дочерние файлы и каталоги
знч КаталогИсточник = новый Файл("C:/SourceFolder")
// Объект каталога-назначения, будет создан, если не существует
знч КаталогЦель = новый Файл("C:/TargetFolder/")
// При копировании будет выброшено исключение, если в целевом каталоге уже есть копируемый файл
Файлы.Скопировать(КаталогИсточник, КаталогЦель)
;
Создать
Создает файл в файловой системе на основе переданного объекта или пути Файл
. Создание происходит с рекурсивным созданием недостающих родительских каталогов (если их еще не было в файловой системе).
Исключения
ИсключениеФайловойСистемы - если файл Файл
уже существует,
ИсключениеДоступаКФайлу - если у текущего пользователя недостаточно прав на запись нового файла.
ИсключениеНедопустимыйАргумент - указан некорректный путь.
Примеры
метод СоздатьФайл()
// Создание пустого файла с именем test.txt в целевом каталоге, несуществующие каталоги в пути будут созданы
знч Файл = Файлы.Создать(новый Файл("test.txt", "C:/TargetFolder/ChildFolder"))
// Работа с файлом
;
СоздатьВременныйКаталог
Создает и возвращает временный каталог во временном каталоге файловой системой. Имя каталога генерируется автоматически, с префиксом Префикс
. УдалитьПослеОкончанияРаботы
- опция автоматического удаления каталога после окончания работы процесса.
Примеры
метод СоздатьВременныйКаталог()
знч ВременныйКаталог = Файлы.СоздатьВременныйКаталог("MyTempFolder")
;
СоздатьВременныйФайл
Создает и возвращает временный файл во временном каталоге файловой системы. Имя каталога генерируется автоматически, с префиксом Префикс
и суффиксом Суффикс
. УдалитьПослеОкончанияРаботы
- опция автоматического удаления каталога после окончания работы процесса.
Примеры
метод СоздатьВременныйФайл()
знч ВременныйФайл = Файлы.СоздатьВременныйФайл("MyFile", "temp")
;
СоздатьКаталог
Создает каталог в файловой системе на основе переданного объекта или пути Файл
. Автоматически создает недостающие каталоги в иерархии (если таковые имеются).
Исключения
ИсключениеФайловойСистемы - если файл уже существует, но не является каталогом.
ИсключениеДоступаКФайлу - у текущего пользователя недостаточно прав на запись нового каталога.
ИсключениеНедопустимыйАргумент - указан некорректный путь.
Примеры
метод СоздатьКаталог()
// Создание каталога, несуществующие каталоги в пути будут созданы
знч Каталог = Файлы.СоздатьКаталог("C:/TargetFolder/ChildFolder")
// Работа с каталогом
;
Удалить
Удалить файл Путь
. ТихийРежим
- выключает выбрасывание исключений ИсключениеДоступаКФайлу.
Исключения
ИсключениеФайловойСистемы - если файл Путь
не найден.
ИсключениеДоступаКФайлу - если недостаточно прав на запись Путь
и параметр IsQuiet
отключен.
ИсключениеНедопустимыйАргумент - указан некорректный путь.
Примеры
метод Удалить()
знч Файл = Файлы.Создать(новый Файл("test.txt", "C:/Folder/ChildFolder"))
Файлы.Удалить(Файл)
попытка
Файлы.Удалить(Файл)
поймать И: ИсключениеФайловойСистемы
// Файл не найден
;
// Удаление без выбрасывания исключений
Файлы.Удалить("C:/Folder/UnknownFolder", Истина)
;