Большинство способов быстрого объединения строк подразумевают использование продвинутых функций платформы, таких как: СтрСоединить, ЗаписьXML и т.д.
Мне захотелось попробовать собрать быструю конкатенацию строк, используя лишь обычные классические действия со строками и массивами, которые будут работать на всех платформах 8 серии.
Сам агригатор строк выполнен в виде обработки, которая должна быть добавлена в конфигурацию.
Основные этапы использования:
СтрАгригатор = Обработки.АгригаторСтрок.Создать();
СтрАгригатор.Добавить_Строку( строка 1) );
. . .
СтрАгригатор.Добавить_Строку( строка N );
ИтоговаяСтрока = СтрАгригатор.Получить_Всю_Строку();
Вот реальный пример применения АгрегатораСтрок:
//СтрКодов = "";
СтрАгригатор = Обработки.АгригаторСтрок.Создать();
первый_эл = Истина;
Для каждого стр из ТЗ_элементов_Запрета Цикл
Если первый_эл = Ложь тогда
//СтрКодов = СтрКодов+";";
СтрАгригатор.Добавить_Строку(";");
КонецЕсли;
//СтрКодов = СтрКодов+стр.Код;
СтрАгригатор.Добавить_Строку( СокрЛП(стр.Код) );
первый_эл = Ложь;
КонецЦикла;
СтрКодов = СтрАгригатор.Получить_Всю_Строку();
Похожие публикации:
Формирование строки большой длины
Варианты конкатенации строк в 1С и замеры производительности
Скорость сложения строк большой длины в 1С разными методами (конкатенация строк)