Intereting Posts
Как я могу создать нечто похожее на псевдоним, который правильно расширяет исходную команду? не удалось установить / dev / mapper / cryptswap1 Какой самый надежный стабильный способ дефрагментировать фрагментированный том Ext3 в 2017 году? Может ли e4defrag использоваться для дефрагментации ext3? Ошибка установки драйвера Madwifi: «Невозможно обнаружить версию ядра» Жесткий диск с шумом на Acer AO722 Нет драйвера для чипа Ralink 5360 Гном-терминал и солнечная тема Как изменить формат даты / времени на английский? Слабый щелчок, как текст консоли, прокручивается Как добавить разные номера страниц стиля в либерроффе? Будет ли приложение Appearance в 11.10 или другим стандартным способом изменения тем? Почему мои настройки DNS продолжают меняться? Главная папка в `root`, а не` home` … Я в замешательстве! Как я могу связаться с разработчиком Ubuntu, чтобы помочь с проблемой? Ubuntu 16.04 Медленный запуск

tinyXml как добавить элемент

У меня есть следующее:

TiXmlDocument doc; TiXmlDeclaration * decl = new TiXmlDeclaration( "1.0", "utf-8", ""); doc.LinkEndChild( decl ); TiXmlElement * root = new TiXmlElement( "Value" ); TiXmlElement * element = new TiXmlElement( "number" ); root->LinkEndChild( element); TiXmlText * text = new TiXmlText( "5" ); element->LinkEndChild( text ); 

ЭТО ПОЭТОМУ ЭТО? Я ХОТЯ ИХ иметь .xml как:

  5  

СПАСИБО!

мой вопрос в том, могу ли я иметь значение int в виде строки. если это нормально, если я отправляю таким образом xml-файл? или есть способ указать, что 5 – это int, а не текст?

Если вы хотите добавить узел, содержащий целочисленное значение, это целое число сначала преобразуется в строку. Вы можете сделать это с помощью множества функций, но я предпочитаю snprintf (другие могут отличаться :))

Рассмотрим следующий пример:

 int five = 5; char buf[256]; snprintf(buf, sizeof(buf), "%d", five); // transforms the integer to a string TiXmlText * text = new TiXmlText( buf ); element->LinkEndChild( text ); 

Как следует из названия, узлом TiXmlText является текст. Вы можете отправить текстовое представление целого числа, но вы не можете рассматривать значение узла как целое, если вы его не преобразуете самостоятельно.

Таким образом, вам TiXmlText конвертировать из любого типа в текст, когда вы храните его в узле TiXmlText , а затем обратно из текста в любой тип, когда вы его извлекаете.