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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Формирование вектора http://www.cyberforum.ru/cpp-beginners/thread188573.html
Посылаю Великий поклон участникам данного форума и отдельно ответившим!!! Задача. Дана матрица целых чисел размерностью 4 на 6. Сформировать вектор из произведений элементов каждого столбца этой матрицы. Вот есть ответ, но препод говорит, что неверный. В чем состоят ошибки? Помогите ответом... #include <math.h> void tred2(float **a, int n, float *d, float *e) { int l,k,j,i; float...
C++ Что вы думаете о C Sharp Скажите, пожалуйста, тяжелый ли язык C Sharp ? Что лучше С Sharp или C++ biulder во время трудоустройства???Как вы думаете ???? http://www.cyberforum.ru/cpp-beginners/thread188531.html
C++ Задачи C++
4. 1) Сформировать одномерный массив целых чисел, используя датчик случайных чисел. 2) Распечатать полученный массив. 3) Удалить последний элемент равный 0. 4) Добавить после элемента массива с заданным индексом элемент со значением 100. 5) Распечатать полученный массив. 5. Написать процедуру обмена столбца и строки двухмерного массива. С ее помощью поменять местами те строки...
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) и всё это выражение в степени N (выражение, но не произведение). N - натуральные числа, увеличивающиеся на 1. Начальное 0. Моё извращённое сознание выдало такой вот недокод: #include <cstdlib> #include <iostream>... подробнее

Показать сообщение отдельно
dimonser
 Аватар для dimonser
3 / 2 / 1
Регистрация: 31.03.2010
Сообщений: 16
09.11.2010, 18:52     TinyXml - добавление данных в конец xml файла
Есть рабочая функция, которая принимает данные и добавляет их в конец файла.
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;
И собственно вопрос - как добавлять данные к файлу не загружая всего файла? Заранее спасибо.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 02:43. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru