Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> pugixml проблемы 
:(
    Опции темы
MaksSh
Дата 17.4.2009, 12:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Всем привет
начал использовать pugixml и сразу столкнулся с проблемой
 вот код взят из примера pugixml
Код

int main()
{
    xml_document doc;
    if(!doc.load("<bookstore><book title='ShaderX'><price>3</price></book><book title='GPU Gems'><price>4</price></book></bookstore>"))
    {
       cout << "Oshbka doc" << endl;
    }

    // If you want to iterate through nodes...

    {
        // Get a bookstore node
        xml_node bookstore = doc.child("bookstore");
        if(!bookstore)
        {
            
            cout << "Oshbka node" << endl;
        }
        // Iterate through books
        for (xml_node book = bookstore.child("book"); book; book = book.next_sibling("book"))
        {
            cout << "Book " << book.attribute("title").value() << ", price " << book.child("price").first_child().value() << endl;
        }

                        doc.save_file( "name3" , " "  );

        // Output:
        // Book ShaderX, price 3
        // Book GPU Gems, price 4
    }
    char r;
    cin >> r;
    cout << "Yf;vbnt lubuu blavishy dla buxoda" << endl;
};

заменяю строку
Код

if(!doc.load("<bookstore><book title='ShaderX'><price>3</price></book><book title='GPU Gems'><price>4</price></book></bookstore>"))

на
Код

if(!doc.load("name1.xml"))

name1.xml содержит ту же строку, XMLNotepadом открывается нормально
но теперь приложение выдаёт строку "Oshbka node"
произошла ошибка причтении XMLа, пробовал из строки создать XML создаётся прекрасно, но опять же прочитать я его не могу
в чем проблема я не понял
PM MAIL WWW ICQ Skype   Вверх
chaos
Дата 17.4.2009, 14:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Серийный программист
****


Профиль
Группа: Завсегдатай
Сообщений: 2979
Регистрация: 7.7.2004
Где: Екатеринбург

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



сдается мне что метод load загружает непосредственно контент, а не открывает файл и ....

Код

ifstream in("in.txt");

string content;
copy(istream_iterator<string>(in),
        istream_iterator<string>(),
        back_inserter(content));

doc.load(content.c_str());


Это сообщение отредактировал(а) chaos - 17.4.2009, 14:14
PM WWW   Вверх
math64
Дата 20.4.2009, 07:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2505
Регистрация: 12.4.2007

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



Все проще:
Код

doc.load_file("name.xml");

PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

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

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


 




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


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

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