как записать в xml строку? 1c8

1. kostya_77 07.05.20 11:42 Сейчас в теме
как записать в xml строку?
<DECLAR xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="J0210401.xsd">
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. YannikAlx 27 07.05.20 12:29 Сейчас в теме
Хоть 1111 раз прочтут - никто ничего не поймет из вашего описания!
снова Кашпировского ищете?
3. DmitriyTih 07.05.20 12:55 Сейчас в теме
Например, можно так записать:

Записьxml = новый ЗаписьXML;
Записьxml.ОткрытьФайл(ИмяФайла);
Записьxml.ЗаписатьОбъявлениеXML();
Записьxml.ЗаписатьНачалоЭлемента("Пример");
Записьxml.ЗаписатьТекст("Текст");
Записьxml.ЗаписатьКонецЭлемента();
4. user5300 1033 07.05.20 13:01 Сейчас в теме
   //Имя справочника для примера
    ИмяСправочника = "Номенклатура";
    
    ////////////////////////////////////////////////////////////­­/////////////
    //Выгрузка
    
    Запись = Новый ЗаписьXML;
    Запись.УстановитьСтроку();
    
    //записываем объявление xml файла: <?xml version="1.0"?>
    Запись.ЗаписатьОбъявлениеXML();
    
    //записываем корневой элемент, по спецификации xml он может быть только один, назовем его "Данные"
    Запись.ЗаписатьНачалоЭлемента("Данные");
    
    //для того чтобы пространства имен не объявлялись сериализатором в кажом элементе, пишем их в корневой элемент
    //они будут работать на все вложеные элементы
    //пространство имен по-умолчанию
    Запись.ЗаписатьСоответствиеПространстваИмен("", "http://v8.1c.ru/8.1/data/enterprise/current-config");
    
    //пространства имен остальные префиксы
    Запись.ЗаписатьСоответствиеПространстваИмен("xsd", "http://www.w3.org/2001/XMLSchema");
    Запись.ЗаписатьСоответствиеПространстваИмен("xsi", "http://www.w3.org/2001/XMLSchema-instance");
    
    //ограничение количества выгружаемых элементов для примера
    Кол = 4;
    Выборка = Справочники[ИмяСправочника].Выбрать();
    Пока Выборка.Следующий() Цикл
        
        //вместо этого кода в боевой реализации выгрузки будет создание ОбъектаXDTO и его сериализация
        //через ФабрикуXDTO и загруженные в нее схемы конфигурации приемника
        СериализаторXDTO.ЗаписатьXML(Запись, Выборка.ПолучитьОбъект());
        //
        
        Кол = Кол - 1;
        Если Кол=0 Тогда
            Прервать;
        КонецЕсли;
    КонецЦикла;
    
    //записываем конец корневого элемента
    Запись.ЗаписатьКонецЭлемента();
    
    //покажем что получилось
    Текст = Запись.Закрыть();
    Сообщить("Содержимое файла:");
    Сообщить(Текст);
    
    //а теперь загрузим это обратно
    
    ////////////////////////////////////////////////////////////­­/////////////
    //Загрузка
    Сообщить("Данные полученные при загрузке:");
    
    Чтение = Новый ЧтениеXML;
    Чтение.УстановитьСтроку(Текст);
    
    //прочитаем начало xml файла
    Чтение.ПерейтиКСодержимому();
    
    //прочитаем начало корневого элемента
    Чтение.Прочитать();
    
    //читаем содержимое пока текущим не станет конец корневого элемента, т.к. мы писали туда только целые элементы справочника,
    //а сериализатор читает каждый из их полностью, то мы упремся именно в конец корневого
    Пока Чтение.ТипУзла<>ТипУзлаXML.КонецЭлемента Цикл
        
        //читаем очередной элемент справочника
        Объект = СериализаторXDTO.ПрочитатьXML(Чтение);
        
        //покажем что прочитали, осталось только записать объект
        Сообщить(""+ТипЗнч(Объект)+" - "+Объект);
    КонецЦикла;
    
    Чтение.Закрыть();
Показать
5. YannikAlx 27 07.05.20 13:06 Сейчас в теме
Вот видите сколько кандидатов в Кашпировского? а воз то и ныне там!
А всего то требуется писать вопросы, которые хотя бы самому понятны...
6. nissti 6 07.05.20 15:03 Сейчас в теме
DECLAR xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" это

ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("xsi", "http://www.w3.org/2001/XMLSchema-instance");

xsi:noNamespaceSchemaLocation="J0210401.xsd надо описывать при помощи
ЗаписьXML.ЗаписатьАтрибут("xsi:schemaLocation", ""); - тут продумать для себя надо второй параметр
7. kostya_77 07.05.20 17:04 Сейчас в теме
всем спасибо разобрался
8. user969609 01.03.24 07:06 Сейчас в теме
(7) так в итоге и как же "записать в xml строку?"
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот