https://github.com/oscript-library/tempfiles
Работа с временными файлами
https://github.com/oscript-library/tempfiles
Last synced: about 1 month ago
JSON representation
Работа с временными файлами
- Host: GitHub
- URL: https://github.com/oscript-library/tempfiles
- Owner: oscript-library
- Created: 2016-09-09T09:44:41.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2023-11-28T08:46:38.000Z (about 2 years ago)
- Last Synced: 2025-01-19T04:12:44.762Z (about 1 year ago)
- Language: 1C Enterprise
- Size: 27.3 KB
- Stars: 6
- Watchers: 6
- Forks: 6
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Работа с временными файлами
Позволяет удобно управлять созданием и удалением временных файлов.
## API
Для обращения к методам модуля используется свойство глобального контекста **ВременныеФайлы**, например:
`ВременныйКаталог = ВременныеФайлы.СоздатьКаталог();`
|Метод|Описание
|----|----|
|``НовоеИмяФайла(Расширение = "tmp")`` | генерирует уникальное имя, по которому можно создать временный файл
|``СоздатьФайл(Расширение = "tmp")`` | создает файл во временном каталоге системы, возвращает путь
|``СоздатьКаталог(Расширение = "tmp")`` | создает каталог во временном каталоге системы, возвращает путь
|``Удалить()`` | удаляет все ранее созданные файлы и каталоги
|``УдалитьФайл(Путь)`` | удаляет указанный файл/каталог. Если у файла указан файловый атрибут "только для чтения", перед удалением происходит попытка снять этот атрибут.
|``БезопасноУдалитьФайл(Путь)`` | удаляет указанный файл полностью аналогично методу `УдалитьФайл`
|``Файлы()`` | возвращает массив с путями ко всем временным файлам
|``УдалитьНакопленныеВременныеФайлы(ВременныеФайлыДо)`` | удаляются все накопленные временные файлы, которые были добавлены после фиксации набора временных файлов с помощью метода `Файлы`
## Собственный менеджер
Все временные файлы управляются классом `МенеджерВременныхФайлов`. Один экземпляр этого класса библиотека tempfiles создает автоматически и регистрирует его, как глобальное свойство `ВременныеФайлы`.
Если вы хотите создать отдельный перечень автоматически управляемых временных файлов - вы можете создать свой объект временных файлов с помощью конструкции Новый.
```bsl
#Использовать tempfiles
Сообщить(ТипЗнч(ВременныеФайлы)); //Глобальный менеджер временных файлов, представленный глобальным свойством ВременныеФайлы
МоиВременные = Новый МенеджерВременныхФайлов();
Сообщить(ТипЗнч(МоиВременные)); // собственный список временных файлов
// при выполнении будет выведено:
// МенеджерВременныхФайлов
// МенеджерВременныхФайлов
```
### Использование
```bsl
ВремФайл = ВременныеФайлы.СоздатьФайл();
МойМенеджер = Новый МенеджерВременныхФайлов();
ВремФайлОтдельный = МойМенеджер.СоздатьФайл();
ВременныеФайлы.Удалить(); // все файлы, созданные менеджером ВременныеФайлы - удалены. Файл менеджера МойМенеджер - не тронут.
МойМенеджер.Удалить(); // все файлы, созданные менеджером МойМенеджер - удалены. Файл менеджера ВременныеФайлы, и всех прочих менеджеров - не тронуты.
```