<?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[XML Dokument speichern mit libxml2]]></title><description><![CDATA[<p>Hallo,<br />
ich arbeite nun seit kurzem an einem Projekt welches XML nutzt. Nun habe ich ein XML-File welches nach gewünschten vorgaben durchlaufen und verändert wird. Die Veränderungen sollen nun gespeichert werden und dort tritt ein Problem auf!</p>
<p>`xmlSaveFormatFile' undeclared (first use this function)</p>
<p>Mag sein das ich mich täusche aber xmlSaveFormatFile() sollte doch eine funktion der libxml sein?! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Noch ein kleiner Nachtrag...</p>
<p>Funktionen wie xmlNewTextChild() funktionieren einwandfrei! D.h. die lib ist richtig eingebunden nehme ich an.</p>
<p>Vielen Dank für eure Hilfe</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/183914/xml-dokument-speichern-mit-libxml2</link><generator>RSS for Node</generator><lastBuildDate>Wed, 23 Sep 2026 12:10:04 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/183914.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 10 Jun 2007 13:39:47 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to XML Dokument speichern mit libxml2 on Sun, 10 Jun 2007 13:39:47 GMT]]></title><description><![CDATA[<p>Hallo,<br />
ich arbeite nun seit kurzem an einem Projekt welches XML nutzt. Nun habe ich ein XML-File welches nach gewünschten vorgaben durchlaufen und verändert wird. Die Veränderungen sollen nun gespeichert werden und dort tritt ein Problem auf!</p>
<p>`xmlSaveFormatFile' undeclared (first use this function)</p>
<p>Mag sein das ich mich täusche aber xmlSaveFormatFile() sollte doch eine funktion der libxml sein?! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Noch ein kleiner Nachtrag...</p>
<p>Funktionen wie xmlNewTextChild() funktionieren einwandfrei! D.h. die lib ist richtig eingebunden nehme ich an.</p>
<p>Vielen Dank für eure Hilfe</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1302467</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1302467</guid><dc:creator><![CDATA[lokiht]]></dc:creator><pubDate>Sun, 10 Jun 2007 13:39:47 GMT</pubDate></item><item><title><![CDATA[Reply to XML Dokument speichern mit libxml2 on Sun, 10 Jun 2007 15:04:29 GMT]]></title><description><![CDATA[<p>Gibt es vielleicht eine Alternative Möglichkeit das XML-Dokument zu speichern?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1302539</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1302539</guid><dc:creator><![CDATA[lokiht]]></dc:creator><pubDate>Sun, 10 Jun 2007 15:04:29 GMT</pubDate></item><item><title><![CDATA[Reply to XML Dokument speichern mit libxml2 on Sun, 10 Jun 2007 15:34:21 GMT]]></title><description><![CDATA[<p>Bist du dir denn ganz sicher, dass du den passenden Header für diese Funktion inkludiert hast?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1302550</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1302550</guid><dc:creator><![CDATA[lolz]]></dc:creator><pubDate>Sun, 10 Jun 2007 15:34:21 GMT</pubDate></item><item><title><![CDATA[Reply to XML Dokument speichern mit libxml2 on Sun, 10 Jun 2007 16:26:23 GMT]]></title><description><![CDATA[<p>Vielen Dank für die Antwort.</p>
<p>Das sind meine includes:</p>
<pre><code class="language-cpp">#include &lt;stdio.h&gt;
#include &lt;string.h&gt;
#include &lt;stdlib.h&gt;
#include &lt;libxml/xmlmemory.h&gt;
#include &lt;libxml/parser.h&gt;
#include &lt;iostream&gt;
</code></pre>
<p>Das sind die, die auch im Tutorial inkludiert werden in dem das speichern eines XML-Dokumentes behandelt wird.</p>
<p>Sollte die Funktion xmlSaveFormatFile in einer der Header deklariert sein?<br />
Ich habe nämlich keinen Hinweis darauf gefunden in den einzelnen Headern (xmlmemory.h, Parser.h)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1302583</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1302583</guid><dc:creator><![CDATA[lokiht]]></dc:creator><pubDate>Sun, 10 Jun 2007 16:26:23 GMT</pubDate></item><item><title><![CDATA[Reply to XML Dokument speichern mit libxml2 on Sun, 10 Jun 2007 16:35:11 GMT]]></title><description><![CDATA[<p>In der Datei tree.h wird die Funktion xmlSaveFormatFile deklariert. Und parser.h inkludiert normalerweise tree.h<br />
Du könntest mal versuchen tree.h in deiner .cpp zu inkludieren, vielleicht geht es dann.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1302590</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1302590</guid><dc:creator><![CDATA[lolz]]></dc:creator><pubDate>Sun, 10 Jun 2007 16:35:11 GMT</pubDate></item><item><title><![CDATA[Reply to XML Dokument speichern mit libxml2 on Sun, 10 Jun 2007 16:47:29 GMT]]></title><description><![CDATA[<p>Vielen Dank!</p>
<p>Parser.h inkludiert tree.h und in der tree.h fand ich auch die Funktion xmlSaveFormatFile(). Leider funktioniert es immer noch nicht trotz des inkludierens der tree.h</p>
<p>vielleicht sehe ich den Wald ja auch vor lauter Bäumen nicht.</p>
<p>Hier mal der gesamte Code des Tutorials. Wie schon oben geschrieben verursacht lediglich die Funktion xmlSaveFormatFile() einen fehler. ALLE anderen funktionieren.</p>
<pre><code class="language-cpp">#include &lt;stdio.h&gt;
#include &lt;string.h&gt;
#include &lt;stdlib.h&gt;
#include &lt;libxml/xmlmemory.h&gt;
#include &lt;libxml/parser.h&gt;
//Hier nochmal tree.h inkludiert!
#include &lt;libxml/tree.h&gt;

void
parseStory (xmlDocPtr doc, xmlNodePtr cur, char *keyword) {

	xmlNewTextChild (cur, NULL, &quot;keyword&quot;, keyword);
    return;
}

xmlDocPtr
parseDoc(char *docname, char *keyword) {

	xmlDocPtr doc;
	xmlNodePtr cur;

	doc = xmlParseFile(docname);

	if (doc == NULL ) {
		fprintf(stderr,&quot;Document not parsed successfully. \n&quot;);
		return (NULL);
	}

	cur = xmlDocGetRootElement(doc);

	if (cur == NULL) {
		fprintf(stderr,&quot;empty document\n&quot;);
		xmlFreeDoc(doc);
		return (NULL);
	}

	if (xmlStrcmp(cur-&gt;name, (const xmlChar *) &quot;story&quot;)) {
		fprintf(stderr,&quot;document of the wrong type, root node != story&quot;);
		xmlFreeDoc(doc);
		return (NULL);
	}

	cur = cur-&gt;xmlChildrenNode;
	while (cur != NULL) {
		if ((!xmlStrcmp(cur-&gt;name, (const xmlChar *)&quot;storyinfo&quot;))){
			parseStory (doc, cur, keyword);
		}

	cur = cur-&gt;next;
	}
	return(doc);
}

int
main(int argc, char **argv) {

	char *docname;
	char *keyword;
	xmlDocPtr doc;

	if (argc &lt;= 2) {
		printf(&quot;Usage: %s docname, keyword\n&quot;, argv[0]);
		return(0);
	}

	docname = argv[1];
	keyword = argv[2];
	doc = parseDoc (docname, keyword);
	if (doc != NULL) {
		xmlSaveFormatFile (docname, doc, 0);
		xmlFreeDoc(doc);
	}

	return (1);
}
</code></pre>
<p>Fehlermeldung:</p>
<p>`xmlSaveFormatFile' undeclared (first use this function)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1302601</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1302601</guid><dc:creator><![CDATA[lokiht]]></dc:creator><pubDate>Sun, 10 Jun 2007 16:47:29 GMT</pubDate></item><item><title><![CDATA[Reply to XML Dokument speichern mit libxml2 on Sun, 10 Jun 2007 18:37:34 GMT]]></title><description><![CDATA[<p>Kann es denn überhaupt sein, dass mir der Compiler &quot;`xmlSaveFormatFile' undeclared (first use this function)&quot; liefet, wenn die Funktion nachweislich in der inkludierten Headerdatei zu finden ist? Ich benutze übrigens Dev-Cpp. Vielleicht hat es etwas damit zu tun?</p>
<p>Bitte helft mir ich weis wirklich nicht, was ich da noch machen kann.</p>
<p>Vielen Dank</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1302678</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1302678</guid><dc:creator><![CDATA[lokiht]]></dc:creator><pubDate>Sun, 10 Jun 2007 18:37:34 GMT</pubDate></item></channel></rss>