|
Как прочитать xml файл ответа?
| ☑ |
0
Sova123
13.05.13
✎
14:28
|
Получаю содержимое файла Соединение.Получить(АдресОтправки1, ИмяФайлаОтвета);
ИмяФайлаОтвета
<?xml version="1.0" encoding="UTF-8"?><request><key>581e7b0f58802f764d6becd2740d4489</key><session>37</session><err>0</err></request>
Подскажите пожалуйста как можно прочитать этот фацл и получить атрибуты <key> и <err>
|
|
1
Лефмихалыч
13.05.13
✎
14:30
|
а тупо ЧтениеXML чем не устраивает?
|
|
2
Рэйв
13.05.13
✎
14:30
|
Чтение = Новый ЧтениеXML;
Чтение.ОткрытьФайл(ПутьКФайлу);
Пока Чтение.Прочитать() Цикл
// Прочитать "структурные части" элементов.
// Проверить, какая часть элемента - текущая.
Если Чтение.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
ИмяУзла = Чтение.Имя; Сообщить("--" + ИмяУзла);
// Атрибуты элементов можно читать только если текущая часть -
// начало элемента
Пока Чтение.ПрочитатьАтрибут() Цикл
// Прочитать данные узла атрибута.
ТипУзла = Чтение.ТипУзла;
Имя = Чтение.Имя;
Значение = Чтение.Значение;
// Обработать полученные значения.
КонецЦикла;
ИначеЕсли Чтение.ТипУзла = ТипУзлаXML.Текст Тогда
// В примере просто выводим текст в окно сообщений.
Сообщить("Текст:" + Чтение.Значение);
ИначеЕсли Чтение.ТипУзла = ТипУзлаXML.КонецЭлемента Тогда
// В примере просто выводим признак конца элемента
// в окно сообщений Сообщить("--Конец:" + Чтение.Имя);
КонецЕсли;
КонецЦикла;
DBF-файлы
|
|
3
sikuda
13.05.13
✎
14:39
|
Можно хитрее через XLST
Шаблон преобразования:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<xsl:for-each select="request">
<xsl:value-of select="key"/> -
<xsl:value-of select="err"/>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
Код 1С
Преобразование = Новый ПреобразованиеXSL;
Преобразование.ЗагрузитьИзСтроки(XSL);
ResultXML = Преобразование.ПреобразоватьИзСтроки(OriginXML);
|
|
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.