|
v7: Загрузка значений из XML | ☑ | ||
---|---|---|---|---|
0
Маркусс
07.07.16
✎
11:50
|
Добрый день
Считываю файл XML. Пока не начинаю считывать значения объектов в цикле нормально считываются теги. Процедура Сформировать() ЗагрузитьКомпонентуV7plus(); Файл = "D:\base\тест\ExtForms\1\сЗаявок.xml"; гФайл = гXMLАнализатор.СоздатьПоследовательноСчитываемыйДокумент(); гФайл.СвязатьСФайлом(Файл); ТипТега = гФайл.Спуститься(); СвойстваТекущегоУзла = гФайл.СвойстваТекущегоУзла; ИмяТега = СвойстваТекущегоУзла.Имя; Пока ТипТега <> 4 Цикл // пока не достигнут конец файла Если ТипТега <> 1 Тогда // пропускаем концы уровней и инструкции ВыбратьУзлы ТипТега = гФайл.Следующий(); Продолжить; КонецЕсли; ИмяТега = гФайл.СвойстваТекущегоУзла.Имя; ТипТега = гФайл.Спуститься(); Продолжить; КонецЦикла; КонецПроцедуры Если пытаюсь получить текущийЭлементВВидеОбъекта, то считывается только один элемент, затем метод Спуститься() перекидывает сразу на последнюю строку. Что делаю не так? Процедура Сформировать() ЗагрузитьКомпонентуV7plus(); Файл = "D:\base\тест\ExtForms\1\сЗаявок.xml"; гФайл = гXMLАнализатор.СоздатьПоследовательноСчитываемыйДокумент(); гФайл.СвязатьСФайлом(Файл); ТипТега = гФайл.Спуститься(); СвойстваТекущегоУзла = гФайл.СвойстваТекущегоУзла; ИмяТега = СвойстваТекущегоУзла.Имя; Пока ТипТега <> 4 Цикл // пока не достигнут конец файла Если ТипТега <> 1 Тогда // пропускаем концы уровней и инструкции ВыбратьУзлы ТипТега = гФайл.Следующий(); Продолжить; КонецЕсли; ИмяТега = гФайл.СвойстваТекущегоУзла.Имя; Объект = гФайл.ТекущийЭлементВВидеОбъекта(); ИмяУзла = Объект.Наименование; Значение = Объект.Значение; ТипТега = гФайл.Спуститься(); Продолжить; КонецЦикла; КонецПроцедуры Спасибо |
|||
1
Ёпрст
07.07.16
✎
11:58
|
ну почитай про Спуститься в Сп что ле
|
|||
2
Это_mike
07.07.16
✎
12:02
|
(1) так это вроде из СП код?
|
|||
3
Маркусс
07.07.16
✎
12:03
|
(1) так почему метод Спуститься в первом случае перепрыгивает на следующий тэг, в во втором сразу на конец документа?
(2) да |
|||
4
Маркусс
07.07.16
✎
12:13
|
Фиг с ним с методом. Вот есть файл XML произвольной структуры. Как считать все его значения?
|
|||
5
Ёпрст
07.07.16
✎
12:18
|
(4) через домлокумент проще всего.
|
|||
6
Маркусс
07.07.16
✎
12:44
|
Так понял метод ТекущийЭлементВВидеОбъекта() имеет смысл только для внутренних тегов. Если пытаться его выполнить во внешних, то весь ХМЛ преобразуется в непойми что и курсор позиционируется на конце файла.
Каким образом можно понять, что тег внутренний? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |