<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Double Werte in XML Speichern mit TinyXML]]></title><description><![CDATA[<p>Hallo C++-Community,</p>
<p>ich erstelle zur Kommunikation zwischen Programmen XML-Dateien, diese XML-Dateien erstelle ich mit TinyXml.</p>
<p>Wie ich Xml-Dateien erstelle habe ich auch soweit, allerdings suche ich einen besseren weg als meinen, um Double-Werte als Knotenwerte zu speichern.</p>
<p>Erstellen möchte ich im Prinzip folgende XML-Datei:</p>
<pre><code>&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?&gt;
&lt;aircraft type=&quot;conventional&quot;&gt;
    &lt;wing&gt;
        &lt;geometry&gt;
            &lt;area value=&quot;m^2&quot;&gt;120&lt;/area&gt;
            &lt;wingspan value=&quot;m&quot;&gt;35&lt;/wingspan&gt;
        &lt;/geometry&gt;
        &lt;aerodynamic&gt;
            &lt;liftCoefficient&gt;1.5&lt;/liftCoefficient&gt;
        &lt;/aerodynamic&gt;
    &lt;/wing&gt;
&lt;/aircraft&gt;
</code></pre>
<p>Dazu habe ich in C++ eine Funktion geschrieben, die mir die Xml-Datei erstellt.<br />
klappt auch alles soweit.<br />
Ich möchte allerdings als Knotenwerte (hier: 120, 35 und 1.5) einfache Double-Variablen schreiben.<br />
Derzeit löse ich dieses Problem, indem ich meine Double-Variable mittels sstringstreams in einen String umwandle, den ich dann in den Knoten schreibe.</p>
<p>Das sieht dann so aus (Auschnitt um Knoten &lt;area&gt; zu erstellen):</p>
<pre><code>//create &lt;geometry&gt; child Element &lt;area&gt;
ele = new TiXmlElement(&quot;area&quot;);
valueSstr &lt;&lt; area;                                 //double to string
value = valueSstr.str();
valueSstr.str(&quot;&quot;);                                 //clear stream content
ele-&gt;LinkEndChild(new TiXmlText(value.c_str()));
geometry-&gt;LinkEndChild(ele);
ele-&gt;SetAttribute(&quot;value&quot;, &quot;m^2&quot;);
</code></pre>
<p>Ich empfinde die Umwandlung aber nicht als besonders elegant und frage mich, ob es eine andere Möglichkeit gibt einen Knotenwert mit TinyXml zu erstellen ausser mit TiXmlText().</p>
<p>Danke schonmal für eure Hilfe.</p>
<p>Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/337662/double-werte-in-xml-speichern-mit-tinyxml</link><generator>RSS for Node</generator><lastBuildDate>Fri, 17 Apr 2026 21:15:06 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/337662.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 18 Apr 2016 13:52:26 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Double Werte in XML Speichern mit TinyXML on Mon, 18 Apr 2016 13:52:26 GMT]]></title><description><![CDATA[<p>Hallo C++-Community,</p>
<p>ich erstelle zur Kommunikation zwischen Programmen XML-Dateien, diese XML-Dateien erstelle ich mit TinyXml.</p>
<p>Wie ich Xml-Dateien erstelle habe ich auch soweit, allerdings suche ich einen besseren weg als meinen, um Double-Werte als Knotenwerte zu speichern.</p>
<p>Erstellen möchte ich im Prinzip folgende XML-Datei:</p>
<pre><code>&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?&gt;
&lt;aircraft type=&quot;conventional&quot;&gt;
    &lt;wing&gt;
        &lt;geometry&gt;
            &lt;area value=&quot;m^2&quot;&gt;120&lt;/area&gt;
            &lt;wingspan value=&quot;m&quot;&gt;35&lt;/wingspan&gt;
        &lt;/geometry&gt;
        &lt;aerodynamic&gt;
            &lt;liftCoefficient&gt;1.5&lt;/liftCoefficient&gt;
        &lt;/aerodynamic&gt;
    &lt;/wing&gt;
&lt;/aircraft&gt;
</code></pre>
<p>Dazu habe ich in C++ eine Funktion geschrieben, die mir die Xml-Datei erstellt.<br />
klappt auch alles soweit.<br />
Ich möchte allerdings als Knotenwerte (hier: 120, 35 und 1.5) einfache Double-Variablen schreiben.<br />
Derzeit löse ich dieses Problem, indem ich meine Double-Variable mittels sstringstreams in einen String umwandle, den ich dann in den Knoten schreibe.</p>
<p>Das sieht dann so aus (Auschnitt um Knoten &lt;area&gt; zu erstellen):</p>
<pre><code>//create &lt;geometry&gt; child Element &lt;area&gt;
ele = new TiXmlElement(&quot;area&quot;);
valueSstr &lt;&lt; area;                                 //double to string
value = valueSstr.str();
valueSstr.str(&quot;&quot;);                                 //clear stream content
ele-&gt;LinkEndChild(new TiXmlText(value.c_str()));
geometry-&gt;LinkEndChild(ele);
ele-&gt;SetAttribute(&quot;value&quot;, &quot;m^2&quot;);
</code></pre>
<p>Ich empfinde die Umwandlung aber nicht als besonders elegant und frage mich, ob es eine andere Möglichkeit gibt einen Knotenwert mit TinyXml zu erstellen ausser mit TiXmlText().</p>
<p>Danke schonmal für eure Hilfe.</p>
<p>Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2493435</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2493435</guid><dc:creator><![CDATA[AlexR]]></dc:creator><pubDate>Mon, 18 Apr 2016 13:52:26 GMT</pubDate></item><item><title><![CDATA[Reply to Double Werte in XML Speichern mit TinyXML on Mon, 18 Apr 2016 14:19:40 GMT]]></title><description><![CDATA[<p>tinyxml2::XMLElement::SetText gibts mit double</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2493438</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2493438</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Mon, 18 Apr 2016 14:19:40 GMT</pubDate></item><item><title><![CDATA[Reply to Double Werte in XML Speichern mit TinyXML on Tue, 19 Apr 2016 12:55:33 GMT]]></title><description><![CDATA[<p>Es gäbe dann auch noch <code>std::to_string</code> :<br />
<a href="http://de.cppreference.com/w/cpp/string/basic_string/to_string" rel="nofollow">http://de.cppreference.com/w/cpp/string/basic_string/to_string</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2493507</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2493507</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Tue, 19 Apr 2016 12:55:33 GMT</pubDate></item></channel></rss>