как сделать загрузку справочника из .txt
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
например, есть строка a файле
СуперПуперТовар<tab>100.00<tab>срочно покупать это выгодный товар
..
СуперПуперТовар<tab>100.00<tab>срочно покупать это выгодный товар
..
Код |
---|
СЗ=0;
Т=СоздатьОбъект("Текст");
Т.Открыть("c:\test.txt");
КС=Т.КоличествоСтрок();
Для сч=1 по КС Цикл
ТекСтрока=Т.ПолучитьСтроку(сч);
СЗ=глРазложить(ТекСтрока,СимволТабуляции); //здесь получаем список значений
Товар=Сз.ПолучитьЗначение(1);
Цена=Сз.ПолучитьЗначение(2);
Комментарий=Сз.ПолучитьЗначение(3);
КонецЦикла;
.. Показать полностью |
Я делаю так:
Процедура Загрузить()
имяПапки=""; имяФайла="";
фс.ВыбратьФайл(0,имяФайла,имяПапки,"Выберите файл для загрузки","Все файлы (*.txt) |*.txt","txt");
ПолнИмя=имяПапки+"\"+имяФайла;
ТХТ=СоздатьОбъект("Текст");
ТХТ.Очистить();
СЗ=СоздатьОбъект("СписокЗначений");
СЗ.УдалитьВсе();
ТХТ.Открыть(ПолнИмя);
Для н=1 по ТХТ.КоличествоСтрок() Цикл
СЗ.ИзСтрокиСРазделителями(ТХТ.ПолучитьСтроку(н));
Товар=Сз.ПолучитьЗначение(1);
Цена=Сз.ПолучитьЗначение(2);
Комментарий=Сз.ПолучитьЗначение(3);
......
СЗ.УдалитьВсе();
КонецЦикла;
КонецПроцедуры // Загрузить
Процедура Загрузить()
имяПапки=""; имяФайла="";
фс.ВыбратьФайл(0,имяФайла,имяПапки,"Выберите файл для загрузки","Все файлы (*.txt) |*.txt","txt");
ПолнИмя=имяПапки+"\"+имяФайла;
ТХТ=СоздатьОбъект("Текст");
ТХТ.Очистить();
СЗ=СоздатьОбъект("СписокЗначений");
СЗ.УдалитьВсе();
ТХТ.Открыть(ПолнИмя);
Для н=1 по ТХТ.КоличествоСтрок() Цикл
СЗ.ИзСтрокиСРазделителями(ТХТ.ПолучитьСтроку(н));
Товар=Сз.ПолучитьЗначение(1);
Цена=Сз.ПолучитьЗначение(2);
Комментарий=Сз.ПолучитьЗначение(3);
......
СЗ.УдалитьВсе();
КонецЦикла;
КонецПроцедуры // Загрузить
Самое удобное (ИМХО): Стр=СтрЗаменить(Стр,КакойСимволМенять,РазделительСтрок);
КакойСимволМенять - или символ Tab, или пробел, или запятую.. и.тд.
А потом (к примеру):
Для А=1 По СтрКоличествоСтрок(Стр) Цикл
Наименование=СтрПолучитьСтроку(Стр,1);
Количество=Число(СтрПолучитьСтроку(Стр,2));
...............................................
КонецЦикла;
КакойСимволМенять - или символ Tab, или пробел, или запятую.. и.тд.
А потом (к примеру):
Для А=1 По СтрКоличествоСтрок(Стр) Цикл
Наименование=СтрПолучитьСтроку(Стр,1);
Количество=Число(СтрПолучитьСтроку(Стр,2));
...............................................
КонецЦикла;
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот