Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

TinyXml - добавление данных в конец xml файла - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Формирование вектора http://www.cyberforum.ru/cpp-beginners/thread188573.html
Посылаю Великий поклон участникам данного форума и отдельно ответившим!!! Задача. Дана матрица целых чисел размерностью 4 на 6. Сформировать вектор из произведений элементов каждого столбца этой...
C++ Что вы думаете о C Sharp Скажите, пожалуйста, тяжелый ли язык C Sharp ? Что лучше С Sharp или C++ biulder во время трудоустройства???Как вы думаете ???? http://www.cyberforum.ru/cpp-beginners/thread188531.html
C++ Задачи C++
4. 1) Сформировать одномерный массив целых чисел, используя датчик случайных чисел. 2) Распечатать полученный массив. 3) Удалить последний элемент равный 0. 4) Добавить после элемента...
C++ Массив указателей на функции члены
К примеру вот такой код. #include "stdafx.h" #include <stdio.h> class test { public: struct s {
C++ Создать класс Matrix http://www.cyberforum.ru/cpp-beginners/thread188519.html
Для соответствующего класса, перегрузить арифметические операции(+,-,*,/). При перезгузке арифметические действия должны выполняться относительно только числовых полей!!! Создать несколько объектов...
C++ Моё извращённое сознание Задача для идиотов, но я с ней не справился: Вычислить приближённое значение бесконечной суммы с точностью до e=0.0001. Формула членов суммы (-1)в степени N умножить на N/(N+1)(N+2) и всё это... подробнее

Показать сообщение отдельно
dimonser
3 / 2 / 1
Регистрация: 31.03.2010
Сообщений: 16

TinyXml - добавление данных в конец xml файла - C++

09.11.2010, 18:52. Просмотров 1151. Ответов 0
Метки (Все метки)

Есть рабочая функция, которая принимает данные и добавляет их в конец файла.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
int AddToXML(const char *filename,const XMLDATA data, int num, int mode)
{
    TiXmlDocument doc;
    if(!doc.LoadFile(filename))
        return 0;
    TiXmlElement *elem;
    TiXmlElement *iter;
        iter = new TiXmlElement("Iteration");
        if(mode==ONLY_RT || mode==ALL_XMLDATA)
        {    
            elem = new TiXmlElement("RealTime");
            elem->SetDoubleAttribute("size",data.RTsize);
            elem->SetAttribute("param",data.RTparam);
            iter->LinkEndChild(elem);
        }
        if(mode==ONLY_MT || mode==ALL_XMLDATA)
        {
            elem = new TiXmlElement("ModelTime");
            elem->SetDoubleAttribute("size",data.MTsize);
            elem->SetAttribute("param",data.MTparam);
            iter->LinkEndChild(elem);
        }
        if(mode==ONLY_MS || mode==ALL_XMLDATA)
        {
            elem = new TiXmlElement("MemorySize");
            elem->SetAttribute("size",data.MSsize);
            elem->SetAttribute("param",data.MSparam);
            iter->LinkEndChild(elem);
        }
        doc.LinkEndChild(iter);
    if(!doc.SaveFile(filename))
    {
        return 0;
    }
    return 1;
}
Функция работает корректно, но основная проблема в том, что при большом размере файла эта функция становится крайне медлительной, из-за того что загружает весь документ.
C++
1
2
3
 TiXmlDocument doc;
    if(!doc.LoadFile(filename))
        return 0;
И собственно вопрос - как добавлять данные к файлу не загружая всего файла? Заранее спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru