helpf.pro
Регистрация
 0 
Распечатать

Как преобразовать данные текстового файла с единым разделителем в ТЗ

Код 1C v 8.2 УП
 &НаСервере
//Текст - содержание текстового файла
//Разделитель - символ разделителя
//ЕстьЗакрывающийСимвол - последнее значение заканчивается разделителем
Функция ПреобразоватьТекстВТЗ(Текст,Разделитель,ЕстьЗакрывающийСимвол)

ТаблицаЗначений = Новый ТаблицаЗначений;

МаксимальноеКвоРазделителей = 0;
Для НомерСтроки=1 по Текст.КоличествоСтрок() Цикл
Стр = Текст.ПолучитьСтроку(НомерСтроки);
КвоРазделителей = СтрЧислоВхождений(Стр,Разделитель);
Если КвоРазделителей > МаксимальноеКвоРазделителей Тогда
МаксимальноеКвоРазделителей = КвоРазделителей;
КонецЕсли;
КонецЦикла;

КвоКолонок = ?(ЕстьЗакрывающийСимвол = Истина,МаксимальноеКвоРазделителей,МаксимальноеКвоРазделителей+1);
Ном = 0;
Пока Ном < КвоКолонок Цикл
Ном = Ном+1;
ИмяКолонки = "Колонка"+Ном;
ТаблицаЗначений.Колонки.Добавить(ИмяКолонки);
КонецЦикла;

Для НомерСтроки=1 по Текст.КоличествоСтрок() Цикл

Стр = Текст.ПолучитьСтроку(НомерСтроки);
НоваяСтрока = ТаблицаЗначений.Добавить();

Ном = 0;
Пока Найти(Стр,Разделитель) > 0 Цикл
Ном = Ном+1;
ПозицияРазделителя = Найти(Стр,Разделитель);
//получим значение
ТекЗначение = ЛЕВ(Стр,ПозицияРазделителя - 1);
Стр = Прав(Стр,СтрДлина(Стр) - ПозицияРазделителя);

//теперь запишем значения
ИмяКолонки = "Колонка"+Ном;
НоваяСтрока[ИмяКолонки] = ТекЗначение;
КонецЦикла;

Если ЕстьЗакрывающийСимвол = Ложь Тогда
ИмяКолонки = "Колонка"+(Ном+1);
НоваяСтрока[ИмяКолонки] = Стр;
КонецЕсли;

КонецЦикла;

Возврат ТаблицаЗначений;

КонецФункции
Разместил:   Версии: | 8.x | 8.2 УП |  Дата:   Прочитано: 9698
 0 
Распечатать
Возможно, вас также заинтересует
Выгрузка / Загрузка данных посредством текстовых (TXT) файлов 5
Для работы с текстовыми документами существуют три типа данных – ТекстовыйДокумент, ЗаписьТекста и ЧтениеТекста . Разница двух подходов состоит в способе загрузки документа: ТекстовыйДокумент загружает файл целиком и далее построчно обрабатывает е
Импорт в 1С из текстовых файлов (TXT, CSV) 7
Не редко возникает необходимость загрузить в справочники или документы 1С данные из текстового файла. Приведенный пример внешней обработки позволит преобразовать текстовый файл с известным разделителем данных в поле табличного документа для последующ
Импорт/экспорт CSV в ТЗ 6
//ПреобразоватьТекстCSVвТЗ () импортирует данные в ТЗ из текста формата CSV //Параметры: //ТекстCSV - Строка, содержащая текст в формате csv //Разделитель - Для формата CSV разделителем является ,, но т.к. // Excel берет разделитель и
Как мы писали парсер сайта с ценами для 1С 1
Недавно, мой постоянный клиент решил проводить маркетинговые исследования по изменению цен на товары у конкурентов... и эти данные захотел использовать в 1С в связке с его прайс-листом + куча отчетов с графиками и процентным отклонением от цен основ
Как ПолучитьНавигационнуюСсылку() в Управляемом приложении и на Web-клиенте 6
Вариант 1: ОкноКлиентскогоПриложения (ClientApplicationWindow) ПолучитьНавигационнуюСсылку (GetURL) Синтаксис: ПолучитьНавигационнуюСсылку() Возвращаемое значение: Тип: Строка. Описание: Получает навигационную ссылку в формате 1С:Предприятия
Посмотреть все результаты поиска похожих
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.