Как удалить временный файл в 1с
Перейти к содержимому

Как удалить временный файл в 1с

  • автор:

Временные файлы в 1С

В языке программирования 1С реализован механизм создания временных файлов. Порядок создания и хранения временных файлов обеспечивает система 1С Предприятие. При создании временного файла, для него нужно сгенерировать уникальное имя. Временные файлы удаляются при запуске платформы. Кроме того механизм удаления может быть реализован средствами встроенного языка. Если создается большое количество временных файлов, то рекомендуется самостоятельно отслеживать их удаление. Иначе это может привести к тому, что будет занят большой объем дискового пространства. Если создавать файлы в клиент серверном варианте на сервере, то на сервере при редком перезапуске, может скопиться большое количество временных файлов.

Создание временного файла

Для генерации уникального имени временного файла используется функция ПолучитьИмяВременногоФайла(). Данный метод на вход принимает параметр «Расширение» типа строка. В нем можно задать с каким расширением нужно создать файл. Формат расширения «.txt» или «txt». Если данный параметр не задан, то по умолчанию используется расширение «.tmp». Сам файл при вызове метода ПолучитьИмяВременногоФайла() не создается.

ИмяФайла = ПолучитьИмяВременногоФайла();
ДвоичныеДанные = Новый ДвоичныеДанные("C:\text.txt");
ДвоичныеДанные.Записать(ИмяФайла);

Удаление временного файла

Как было сказано выше, временные файлы удаляются системой 1С при перезапуске программы. Если требуется самостоятельно удалять временные файлы, то это можно сделать средствами языка программирования.

Файл = Новый Файл(ИмяФайла);
Если Файл.Существует() Тогда

УдалитьФайлы(ИмяФайла);

КонецЕсли;

Удаление временного файла после использования

После окончания работы с временным файлом или каталогом его необходимо удалить самостоятельно. Не рекомендуется рассчитывать на автоматическое удаление при следующем запуске платформы, т.к. возможно исчерпание свободного места в каталоге временных файлов.

Пример правильного кода

ИмяПромежуточногоФайла = ПолучитьИмяВременногоФайла("xml"); // Работа с файлом . // Удаляем временный файл Попытка УдалитьФайлы(ИмяПромежуточногоФайла); Исключение ЗаписьЖурналаРегистрации(НСтр("ru = 'Мой механизм.Действие'"), УровеньЖурналаРегистрации.Ошибка, , , ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); КонецПопытки; 

См. также

Экранирование кода

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the «Software»), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED «AS IS», WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. —>

УдалитьВременныйФайл (БСП)

  • Удалить временный файл. Выполняет удаление временного файла, ошибки при удалении игнорируются.

    // Выполняет удаление временного файла, ошибки при удалении игнорируются. // // Параметры: // Путь - Строка - путь к удаляемому файлу. // Процедура УдалитьВременныйФайл(Знач Путь) Экспорт Попытка УдалитьФайлы(Путь); Исключение ЗаписьЖурналаРегистрации(НСтр("ru = 'Удаление файла'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), УровеньЖурналаРегистрации.Ошибка, , , ИнформацияОбОшибке().Описание); КонецПопытки; КонецПроцедуры /////////////////////////////////////////////////////////////////////////////////////////////////////// // Copyright (c) 2019, ООО 1С-Софт // Все права защищены. Эта программа и сопроводительные материалы предоставляются // в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0) // Текст лицензии доступен по ссылке: // https://creativecommons.org/licenses/by/4.0/legalcode ///////////////////////////////////////////////////////////////////////////////////////////////////////
    // Выполняет удаление временного файла, ошибки при удалении игнорируются. // // Параметры: // Путь - Строка - путь к удаляемому файлу. // Процедура УдалитьВременныйФайл(Знач Путь) Экспорт Попытка УдалитьФайлы(Путь); Исключение ЗаписьЖурналаРегистрации(НСтр("ru = 'Удаление файла'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), УровеньЖурналаРегистрации.Ошибка, , , ИнформацияОбОшибке().Описание); КонецПопытки; КонецПроцедуры /////////////////////////////////////////////////////////////////////////////////////////////////////// // Copyright (c) 2019, ООО 1С-Софт // Все права защищены. Эта программа и сопроводительные материалы предоставляются // в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0) // Текст лицензии доступен по ссылке: // https://creativecommons.org/licenses/by/4.0/legalcode ///////////////////////////////////////////////////////////////////////////////////////////////////////

    Удаление временного файла

    71913

    Не устроил ответ?
    Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.

    Реклама

    Новые вакансии

    • Вакансия: Разработчик 1С, Москва, удалёнка/гибрид, 200-300 net от yskinkurogova
      Вчера в 13:25
    • Вакансия аналитика 1с УТ от 200K, гибрид от Татьяна Астахова
      25 января 2024 г.
    • Вакансия Программист 1С (Москва, гибрид) 250-300т.р. от paulaja03@gmail.com
      23 января 2024 г.

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *