|
Импорт данных из текстового файла в справочник | ☑ | ||
---|---|---|---|---|
0
User_15
03.04.16
✎
00:26
|
Всем привет! Есть текстовый файл, который нужно импортировать в справочник услуг. Структура файла такова. Сначала идут строки, которые не имеют отношения к импортируемым данным (типа шапка, комментарии), затем уже идут данные для импорта. Чтобы лучше было понятно, опишу на примере.
Строка1 комментарий Строка2 комментарий Строка3 комментарий Строка4 комментарий Строка5 комментарий Строка6 комментарий 20 01 07 03 40 Примерка: платная хххххххххх уууууууууу 20 16 17 18 80 Примерка: платная особенная ххххххххххххх ууууууууууууу 20 17 19 08 90 Примерка: по выходным хххххххххххх уууууууууууу ................ ................ ................ и т.д. Теперь пояснения - комментарии, естественно, нужно пропустить. Интересующие нас данные начинаются со строк, где 20. Т.е. 20 никуда импортировать не нужно, это просто флаг, после которого идут нужные для импорта данные. После 20 идут три строки, которые нужно объединить в одно поле, например 01-07-03 (из верхнего блока). Далее идет цена (40). Далее название в двух строках, которые нужно объединить в одну (Примерка: платная). Дальше нас уже ничего не интересует, кроме начала следующего блока (20, т.е. процедура должна его найти, пропустить 20 и продолжить процедуру импорта). Подскажите, пожалуйста, как правильнее реализовать такое. |
|||
1
Zamestas
03.04.16
✎
00:37
|
(0) В чем проблема то?
|
|||
2
User_15
03.04.16
✎
00:45
|
(1) Проблема в том, что нужен пример кода, хотя бы приблизительный. Т.е. можно без объединений строк и т.п., сам догадаюсь, главная проблема - это поиск строки по флагу.
|
|||
3
RomanYS
03.04.16
✎
00:48
|
(2) Что значит поиск по файлу? Читай подряд, обрабатывай.
|
|||
4
RomanYS
03.04.16
✎
00:49
|
||||
5
User_15
03.04.16
✎
00:53
|
(3) Не по файлу, а по флагу. За ссылку спасибо, изучу. А простой пример кода в подобной ситуации можно привести?
|
|||
6
RomanYS
03.04.16
✎
00:58
|
Цикл по строкам
... Если ТекСтрока = "20" тогда //здесь читаешь и обрабатываешь 6 строк Конецесли; ... |
|||
7
User_15
03.04.16
✎
01:00
|
(6) Спасибо, попробую.
|
|||
8
b_ru
03.04.16
✎
07:38
|
Импорт разовый? Экселем пользоваться умеешь?
Если да, то просто подготовь файл для загрузки с помощью Экселя. |
|||
9
palpetrovich
03.04.16
✎
07:54
|
"Примерка платная" - ууу, акулы бизнеса :)
|
|||
10
abuca
03.04.16
✎
13:52
|
Если текст, то раскладывай в массив по строкам.
Вот пример функции (с): Функция РазложитьСтрокуВМассив(стр) Разделитель = Символы.Таб;// У тебя будут Символы.ПС, скорее всего Возврат ЗначениеИзСтрокиВнутр("{""#"",51e7a0d2-530b-11d4-b98a-008048da3034,{0,{""S"",""" + СтрЗаменить(СтрЗаменить( Стр , """", """"""), Разделитель, """},{""S"",""") + """}}}"); КонецФункции Кто-то выложил в 1 строку, мне понравилась... А потом легче в массиве будет искать нужные строки. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |