---
title: Работа с файлами УХ
slug: erp-uh/работа-с-файлами-ух
---


## ПолучитьИмяФайла
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl
///////////////////////////////////////////////////////////////////////////////
// ПРОЦЕДУРЫ И ФУНКЦИИ МЕХАНИЗМА РАБОТЫ С ФАЙЛАМИ (ХРАНИМЫМИ В КОНФИГУРАЦИИ)
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////

// Составляет полное имя файла из имени каталога и имени файла.
//
// Параметры
//  ИмяКаталога  – Строка, содержащая путь к каталогу файла на диске.
//  ИмяФайла     – Строка, содержащая имя файла, без имени каталога.
//
// Возвращаемое значение:
//   Строка – полное имя файла с учетом каталога.
//
Функция ПолучитьИмяФайла(ИмяКаталога, ИмяФайла) Экспорт
```

Пример вызова
```bsl
Результат = РаботаСФайламиУХ.ПолучитьИмяФайла(ИмяКаталога, ИмяФайла) 
```
</details>

## ПолучитьКаталогИИмяФайла
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедура полное имя файла разбивает на путь в файлу и имя самого файла
//
// Параметры
//  ПолноеИмяФайла  – Строка, содержащая полное имя файла на диске.
//  ИмяКаталога  – Строка, содержащая путь к каталогу файла на диске.
//  ИмяФайла     – Строка, содержащая имя файла, без имени каталога.
//
Процедура ПолучитьКаталогИИмяФайла(Знач ПолноеИмяФайла, ИмяКаталога, ИмяФайла) Экспорт
```

Пример вызова
```bsl
РаботаСФайламиУХ.ПолучитьКаталогИИмяФайла(ПолноеИмяФайла, ИмяКаталога, ИмяФайла) 
```
</details>

## УстановитьРасширениеФайла
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедура меняет расширение имени переданного файла (сам файл не меняется, меняется колько строка)
//
// Параметры
//  ИмяФайла  – Строка, содержащая полное имя файла на диске.
//  НовоеРасширениеФайла  – Строка, содержащая новое расширение файла.
//
Процедура УстановитьРасширениеФайла(ИмяФайла, Знач НовоеРасширениеФайла) Экспорт
```

Пример вызова
```bsl
РаботаСФайламиУХ.УстановитьРасширениеФайла(ИмяФайла, НовоеРасширениеФайла) 
```
</details>

## ПолучитьДатуФайла
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Функция определяет дату последней модификации существующего файла на диске
// Параметры
//  ИмяФайла  – Строка, содержащая полный путь к файла на диске.
//
// Возвращаемое значение:
//   Дата – Дата последней модификации файла
//
Функция ПолучитьДатуФайла(Знач ИмяФайла) Экспорт
```

Пример вызова
```bsl
Результат = РаботаСФайламиУХ.ПолучитьДатуФайла(ИмяФайла) 
```
</details>

## ПолучитьФильтрФайлов
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Формирует строку фильтра для диалога выбора файла с типами файлов.
//
// Параметры
//  Нет.
//
// Возвращаемое значение:
//   Строка – фильтр по типам файлов для диалога выбора файла.
//
Функция ПолучитьФильтрФайлов() Экспорт
```

Пример вызова
```bsl
Результат = РаботаСФайламиУХ.ПолучитьФильтрФайлов());
```
</details>

## ПолучитьИмяКаталога
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Формирует имя каталога для сохранения/чтения файлов. Для различных типов объектов возможны
// различные алгоритмы определения каталога.
//
// Параметры
//  ОбъектФайла  – Ссылка на объект данных, для которого прикрепляются файлы.
//
// Возвращаемое значение:
//   Строка – каталог файлов для указанного объекта и пользователя.
//
Функция ПолучитьИмяКаталога() Экспорт
```

Пример вызова
```bsl
Результат = РаботаСФайламиУХ.ПолучитьИмяКаталога() 
```
</details>

## ПолучитьСписокЗапрещенныхСимволовВИменахФайлов
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// функция возвращает список запрещенных символов в именах файлов
// Возвращаемое значение:
//   Список значений в котором хранится список всех запрещенных символов в именах файлов.
//
Функция ПолучитьСписокЗапрещенныхСимволовВИменахФайлов() Экспорт
```

Пример вызова
```bsl
Результат = РаботаСФайламиУХ.ПолучитьСписокЗапрещенныхСимволовВИменахФайлов());
```
</details>

## УдалитьЗапрещенныеСимволыИмени
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// функция формирует имя файла выбрасывая из первоначально предложенного имени все
// запрещенные символы
// Параметры
//  ИмяФайла     – Строка, содержащая имя файла, без каталога.
//
// Возвращаемое значение:
//   Строка – имя файла, которое может быть использовано в файловой системе
//
Функция УдалитьЗапрещенныеСимволыИмени(Знач ИмяФайла) Экспорт
```

Пример вызова
```bsl
Результат = РаботаСФайламиУХ.УдалитьЗапрещенныеСимволыИмени(ИмяФайла) 
```
</details>

## ПолучитьРасширениеФайла
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Выделяет из имени файла его расширение (набор символов после последней точки).
//
// Параметры
//  ИмяФайла     – Строка, содержащая имя файла, неважно с именем каталога или без.
//
// Возвращаемое значение:
//   Строка – расширение файла.
//
Функция ПолучитьРасширениеФайла(Знач ИмяФайла) Экспорт
```

Пример вызова
```bsl
Результат = РаботаСФайламиУХ.ПолучитьРасширениеФайла(ИмяФайла) 
```
</details>

## ПолучитьИмяФайлаИзПолногоПути
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Выделяет из полного пути к файлу его имя (набор символов после последней \).
//
// Параметры
//  ПутьКФайлу     – Строка, содержащая имя файла, неважно с именем каталога или без.
//
// Возвращаемое значение:
//   Строка – расширение файла.
//
Функция ПолучитьИмяФайлаИзПолногоПути(Знач ПутьКФайлу) Экспорт
```

Пример вызова
```bsl
Результат = РаботаСФайламиУХ.ПолучитьИмяФайлаИзПолногоПути(ПутьКФайлу) 
```
</details>

## ПолучитьЧастьСтрокиОтделеннойСимволом
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// функция возвращает часть строки после последнего встреченного символа в строке
Функция ПолучитьЧастьСтрокиОтделеннойСимволом(Знач ИсходнаяСтрока, Знач СимволПоиска) Экспорт
```

Пример вызова
```bsl
Результат = РаботаСФайламиУХ.ПолучитьЧастьСтрокиОтделеннойСимволом(ИсходнаяСтрока, СимволПоиска));
```
</details>

## УдалитьФайлыАсинхронно
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

///////////////////////////////////////////////////////////////////////////////
// ФУНКЦИИ ДЛЯ ВЕБ-ПРИЛОЖЕНИЯ
///////////////////////////////////////////////////////////////////////////////

// КоличествоПопыток - 0 - удалять пока не удалятся
Функция УдалитьФайлыАсинхронно(Путь, Маска = Неопределено, КоличествоПопыток = 10) Экспорт
```

Пример вызова
```bsl
Результат = РаботаСФайламиУХ.УдалитьФайлыАсинхронно(Путь, Маска, КоличествоПопыток);
```
</details>

## ВыполнитьУдалениеФайлов
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Предполагается, что вызывается только как фоновое задание
Процедура ВыполнитьУдалениеФайлов(Путь, Маска, КоличествоПопыток, КлючЗадания) Экспорт
```

Пример вызова
```bsl
РаботаСФайламиУХ.ВыполнитьУдалениеФайлов(Путь, Маска, КоличествоПопыток, КлючЗадания) 
```
</details>

## СкопироватьФайл
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Копирует файл Источник в файл Приемник с перезаписью. Если Приемник уже существует,
// то он будет перезаписан, если не существует - то создан.
// Параметры
//  Источник - Строка - Обязательный - путь к файлу, который необходимо скопировать
//  Приемник - Строка - Обязательный - путь к файлу, в который необходимо скопировать
// Возвращаемое значение
//  Истина, если копирование удалось, Ложь - иначе.
Функция СкопироватьФайл(Источник, Приемник) Экспорт
```

Пример вызова
```bsl
Результат = РаботаСФайламиУХ.СкопироватьФайл(Источник, Приемник) 
```
</details>

## ПоместитьФайлВоВременноеХарнилище
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Помещает файл во временное хранилище.
// Параметры
//  ПутьКФайлу - Строка - Обязательный - путь к файлу, который необходимо поместить в хранилище
//  Адрес - Строка - Необязательный - адрес хранилища, по которому поместить файл
// Возвращаемое значение
//  Адрес хранилища, если удалось поместить файл, Неопределено - иначе.
Функция ПоместитьФайлВоВременноеХарнилище(ПутьКФайлу, Знач Адрес = Неопределено) Экспорт
```

Пример вызова
```bsl
Результат = РаботаСФайламиУХ.ПоместитьФайлВоВременноеХарнилище(ПутьКФайлу, Адрес);
```
</details>

---

© 2024, **ООО 1С-Софт**  
Все права защищены. Эта программа и сопроводительные материалы предоставляются  
в соответствии с условиями лицензии [Attribution 4.0 International (CC BY 4.0)](https://creativecommons.org/licenses/by/4.0/legalcode).

---
