Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Не создаёт файл с несколькими узлами 
V
    Опции темы
fatherpatrice
Дата 12.5.2012, 09:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 23.3.2012

Репутация: нет
Всего: нет



Код

    my $doc = XML::LibXML::Document->new( "1.0", "utf-8" );
    if ($r1) {
        my $element1 = $doc->createElement("Val");
        $element1->appendChild($doc->createTextNode($r1));
        $doc->addChild($element1);
    }
    if ($r2) {
        my $element2 = $doc->createElement("Val");
        $element2->appendChild($doc->createTextNode($r2));
        $doc->addChild($element2);
    }
    if ($r3) {
        my $element3 = $doc->createElement("Val");
        $element3->appendChild($doc->createTextNode($r3));
        $doc->addChild($element3);
    }
    if ($r4) {
        my $element4 = $doc->createElement("Val");
        $element4->appendChild($doc->createTextNode($r4));
        $doc->addChild($element4);
    }
    $doc->toFile($file);


Проблема следующая: xml файл нормально создаётся с одним узлом, если узлов больше то он выводит только значение первого встретившегося узла, хотя в файл прописывает все узлы. Пробывал парсить созданый файл - ругаеться "Extra content at the end of the document", как я понимаю В док-те не может быть больше 1 корневого узла, тогда возникает вопрос как мне добавить более 1 узла?
PM MAIL   Вверх
TP@MB@Y
Дата 6.8.2012, 10:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 370
Регистрация: 18.12.2004
Где: Москва

Репутация: нет
Всего: 4



Насколько я знаю, в xml должен быть только один корневой элемент, вы же пытаетесь добавить в корень несколько элементов.
PM   Вверх
krypt3r
Дата 6.8.2012, 10:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 359
Регистрация: 9.6.2009

Репутация: 2
Всего: 16



Цитата
тогда возникает вопрос как мне добавить более 1 узла? 

Корневой узел может быть только один. Добавляйте узлы как потомков (child) корневого узла
Код

<?xml version="1.0" encoding="utf-8"?>
<document>
  <Val id="1"/>
  <Val id="2"/>
  <Val id="3"/>
</document>

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0394 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.