helpf.pro
Регистрация
 0 
Распечатать

Работаем с XML используя ЧтениеXML и ЗаписьXML

Примеры кода для Записи данных в XML файл и его последующего Чтения:

Код 1C v 8.3
 &НаКлиенте
Функция ВывестиЭлем(ХМЛ,Знач Смещ);
    
    Рез=1;
    Попытка
        Пока ХМЛ.Прочитать() Цикл
            ТипУзла=ХМЛ.ТипУзла;
            Если (ТипУзла=ТипУзлаXML.НачалоЭлемента) Тогда
                Смещ=Смещ+"    ";
                Сообщить(Смещ+"Элемент "+ХМЛ.Имя+":",СтатусСообщения.Важное);
                
                Пока (ХМЛ.ПрочитатьАтрибут()) Цикл
                    Сообщить(Смещ+"Атрибут: "+ХМЛ.Имя+", значение: <"+ХМЛ.Значение+">");
                КонецЦикла;
            ИначеЕсли (ТипУзла=ТипУзлаXML.КонецЭлемента) Тогда 
                Смещ=Лев(Смещ,СтрДлина(Смещ)-4);
            ИначеЕсли (ТипУзла=ТипУзлаXML.Текст) Тогда 
                Сообщить(Смещ+"Текст элемента: <"+ХМЛ.Значение+">");
            ИначеЕсли (ТипУзла=ТипУзлаXML.СекцияCDATA) Тогда 
                Сообщить(Смещ+"CDATA: <"+ХМЛ.Значение+">");
            ИначеЕсли (ТипУзла=ТипУзлаXML.Комментарий) Тогда 
                Сообщить(Смещ+"Комментарий: <"+ХМЛ.Значение+">",СтатусСообщения.Информация);
            Иначе
                Сообщить(Смещ+"Элемент "+ХМЛ.Имя+":");
            Сообщить(Смещ+"Тип: "+ХМЛ.Значение);
            КонецЕсли; 
            
        КонецЦикла; 
        
    Исключение
        Сообщить(ОписаниеОшибки());
        Рез=0;
    КонецПопытки;
    
    Возврат Рез;
КонецФункции


&НаКлиенте
Процедура ВыгрузитьХМЛ(ИмяФайла) Экспорт
    
    ХМЛ=Новый ЗаписьXML;
    ХМЛ.ОткрытьФайл(ИмяФайла,Новый ПараметрыЗаписиXML("windows-1251",,Ложь,Ложь));
    ХМЛ.ЗаписатьОбъявлениеXML();
    ХМЛ.ЗаписатьНачалоЭлемента("Файл");
    ХМЛ.ЗаписатьАтрибут("Атрибут_Файл_1","Здесь содержимое Атрибут_Файл_1");
    ХМЛ.ЗаписатьТекст("Здесь содержимое Файл");
    ХМЛ.ЗаписатьКомментарий("Далее следует содержимое файла");
    ХМЛ.ЗаписатьНачалоЭлемента("СодержимоеФайла");
    ХМЛ.ЗаписатьАтрибут("Атрибут_СодержимоеФайла_1","Здесь содержимое Атрибут_СодержимоеФайла_1");
    ХМЛ.ЗаписатьТекст("Здесь содержимое СодержимоеФайла");
    ХМЛ.ЗаписатьСекциюCDATA("Это секция CDATA");
    ХМЛ.ЗаписатьКонецЭлемента();
    ХМЛ.ЗаписатьКонецЭлемента();


    ХМЛ.Закрыть();
    ХМЛ=Неопределено;
    
    ХМЛ=Новый ЧтениеXML;
    ХМЛ.ОткрытьФайл(ИмяФайла,Новый ПараметрыЧтенияXML(,,,ТипПроверкиXML.НетПроверки));
    ВывестиЭлем(ХМЛ,"");
    ХМЛ.Закрыть();
    ХМЛ=Неопределено;
КонецПроцедуры
Разместил:   Версии: | 8.2 УП | 8.3 |  Дата:   Прочитано: 40466
 0 
Распечатать
Возможно, вас также заинтересует
17 правил для составления оптимального ЗАПРОСа к данным базы 1С 49
Для формирования и выполнения запросов к таблицам базы данных в платформе 1С используется специальный объект языка программирования Запрос . Создается этот объект вызовом конструкции Новый Запрос . Запрос удобно...
1C медленно работает по сети с базой на SQL Server 20
Данное обстоятельство может быть обусловлено многими причинами. Одна из них - неоптимальная настройка MS SQL . Перечислим неоптимальности в настройке: 1) Неправильно указанный сетевой протокол, используемый для...
1C: Enterprise Development Tools 51
И вот случилось долгожданное: Вышел 1C: Enterprise Development Tools - это среда для разработки конфигурации в IDE Eclipse. С сайта 1С: « 1C:Enterprise Development Tools » – это инструмент нового поколения для разработчиков бизнес-приложений систем
1Cv8.1CD - Файл данных достиг максимального размера! 8
1С выдает предупреждение " Файл данных достиг максимального размера" . Подскажите из - за чего это и как можно решить ? Превышен размер файла, обычно это сообщение возникает, когда размер файла 1Cv8.1CD приближается к 10...
1С 7.x : Как получить курсы валют с сайта НБУ http://www.bank.gov.ua/ за любую дату ? 6
Функция ПолучитьТаблицуКурсовНБУ(ДатаКурса, Ежедневно = 1) // если в качестве второго параметра указать число отличное от 1 - получем валюты, которые котируются на ежемесячной основе Перем Reader, Url, Точки, HtmlTab, Строк, Р,...
Посмотреть все результаты поиска похожих
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.