|
ЧтениеXML в строку XML |
☑ |
0
Necessitudo
28.07.15
✎
14:17
|
Добрый день! Есть файл с данными, описанными через xml. Мне нужно получить строку, которую возвращает объект ЗаписьXML.Закрыть() - при этом в этой строке должны быть данные из этого файла с данными. Как такое сделать?
|
|
1
Serginio1
28.07.15
✎
14:36
|
Прочитай как текст через ТекстовыйДокумент
прочитать
ПолучитьТекст
|
|
2
Necessitudo
28.07.15
✎
17:13
|
(1) Ага, ты прав.
Я сделал вот так:
ЗаписьXML = Новый ЗаписьXML;
ЗаписьXML.УстановитьСтроку();
ЗаписьXML.ЗаписатьОбъявлениеXML();
ПарсерXML = Новый ЧтениеXML;
ПарсерXML.ОткрытьФайл(ФайлЗаказов);
Пока ПарсерXML.Прочитать() Цикл
Если ПарсерXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
ЗаписьXML.ЗаписатьНачалоЭлемента(ПарсерXML.ЛокальноеИмя);
Пока ПарсерXML.СледующийАтрибут() Цикл
ЗаписьXML.ЗаписатьАтрибут(ПарсерXML.ЛокальноеИмя, ПарсерXML.Значение);
КонецЦикла;
ИначеЕсли ПарсерXML.ТипУзла = ТипУзлаXML.КонецЭлемента Тогда
ЗаписьXML.ЗаписатьКонецЭлемента();
КонецЕсли;
Если ПарсерXML.ТипУзла = ТипУзлаXML.Текст Тогда
ЗаписьXML.ЗаписатьТекст(ПарсерXML.Значение);
ИначеЕсли ПарсерXML.ТипУзла = ТипУзлаXML.СекцияCDATA Тогда
ЗаписьXML.ЗаписатьСекциюCDATA(ПарсерXML.Значение);
ИначеЕсли ПарсерXML.ТипУзла = ТипУзлаXML.Комментарий Тогда
ЗаписьXML.ЗаписатьКомментарий(ПарсерXML.Значение);
КонецЕсли;
КонецЦикла;
СтрокаXML = ЗаписьXML.Закрыть();
|
|
3
Serginio1
31.07.15
✎
22:59
|
Можно сделать значительно проще
ЗаписьXML = Новый ЗаписьXML;
ЗаписьXML.УстановитьСтроку();
Пока ЧтениеXML.Прочитать() Цикл
ЗаписьXML.ЗаписатьТекущий(ЧтениеXML);
КонецЦикла;
СтрокаXML = ЗаписьXML.Закрыть();
|
|