<?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[MSXML 4.0 auslesen eines wertes, den es nicht gib --&amp;gt; FEHLER]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>ich möchte mit dem Borland C++Builder 5.0 und MSXML 4.0 mit folgendem Aufruf werte aus einer XML Datei lesen.<br />
Die XML-datei sieht z.B so aus:</p>
<pre><code class="language-html">&lt;?xml version=&quot;1.0&quot; ?&gt; 
- &lt;xml&gt;
- &lt;ssheing1&gt;
  &lt;row TEST1=&quot;111&quot; TEST2=&quot;222&quot; /&gt; 
  &lt;/ssheing1&gt;
  &lt;/xml&gt;
</code></pre>
<p>Ich mache das folgender massen:</p>
<pre><code class="language-cpp">nodeFeld-&gt;get_attributes()-&gt;getQualifiedItem(WideString(&quot;TEST1&quot;),WideString(&quot;&quot;))-&gt;get_text();
</code></pre>
<p>Ist auch alle so weit in Ordnung,<br />
doch es kommt vor, das es TEST1 gar nicht gibt. Dann knallt es folgender Massen:</p>
<p>_ASSERT:</p>
<p>intf !=0 @ E:\PROGRAMME\CBUILDER\INCLUDE\VCL\utililcls.h/2868 Press[Y]es to terminate , [N]o to continue and [C]ancel to Debug</p>
<p>Das kommt daher weil es den WERT gar nicht gibt.<br />
Ich habe schon versucht den Fehler einfach mit try &amp; catch abzufangen, das geht aber nicht.</p>
<p>Jetzt meine Frage : WIE kann ich vorher feststellen, ob es den WERT gibt oder nicht ???</p>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
<p>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/87933/msxml-4-0-auslesen-eines-wertes-den-es-nicht-gib-gt-fehler</link><generator>RSS for Node</generator><lastBuildDate>Sun, 05 Jul 2026 01:36:53 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/87933.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 05 Oct 2004 10:50:09 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to MSXML 4.0 auslesen eines wertes, den es nicht gib --&amp;gt; FEHLER on Tue, 05 Oct 2004 10:50:57 GMT]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>ich möchte mit dem Borland C++Builder 5.0 und MSXML 4.0 mit folgendem Aufruf werte aus einer XML Datei lesen.<br />
Die XML-datei sieht z.B so aus:</p>
<pre><code class="language-html">&lt;?xml version=&quot;1.0&quot; ?&gt; 
- &lt;xml&gt;
- &lt;ssheing1&gt;
  &lt;row TEST1=&quot;111&quot; TEST2=&quot;222&quot; /&gt; 
  &lt;/ssheing1&gt;
  &lt;/xml&gt;
</code></pre>
<p>Ich mache das folgender massen:</p>
<pre><code class="language-cpp">nodeFeld-&gt;get_attributes()-&gt;getQualifiedItem(WideString(&quot;TEST1&quot;),WideString(&quot;&quot;))-&gt;get_text();
</code></pre>
<p>Ist auch alle so weit in Ordnung,<br />
doch es kommt vor, das es TEST1 gar nicht gibt. Dann knallt es folgender Massen:</p>
<p>_ASSERT:</p>
<p>intf !=0 @ E:\PROGRAMME\CBUILDER\INCLUDE\VCL\utililcls.h/2868 Press[Y]es to terminate , [N]o to continue and [C]ancel to Debug</p>
<p>Das kommt daher weil es den WERT gar nicht gibt.<br />
Ich habe schon versucht den Fehler einfach mit try &amp; catch abzufangen, das geht aber nicht.</p>
<p>Jetzt meine Frage : WIE kann ich vorher feststellen, ob es den WERT gibt oder nicht ???</p>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
<p>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/621415</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/621415</guid><dc:creator><![CDATA[YLIREBUS]]></dc:creator><pubDate>Tue, 05 Oct 2004 10:50:57 GMT</pubDate></item><item><title><![CDATA[Reply to MSXML 4.0 auslesen eines wertes, den es nicht gib --&amp;gt; FEHLER on Tue, 05 Oct 2004 11:24:54 GMT]]></title><description><![CDATA[<p>Ich kenne leider MSXML nicht, da ich die mit dem BCB mitgelieferten Klassen verwende, aber die Vorgehensweise scheint ähnlich zu sein.<br />
Vielleicht weist Du einer temporären Variable den Rückgabewert von getQualifiedItem() zu und prüfst auf Nicht-Null.</p>
<pre><code class="language-cpp">&lt;IrgendwasMitItem&gt;* item = nodeFeld-&gt;get_attributes()-&gt;getQualifiedItem(WideString(&quot;TEST1&quot;),WideString(&quot;&quot;));
if (item)
  item-&gt;get_text();
</code></pre>
<p>Bei den Borland-XML-Klassen gibt es auch die Möglichkeit, nicht bestehende XML-Elemente automatisch beim ersten Zugriff zu erzeugen.</p>
<p>Gruß,</p>
<p>Alexander</p>
]]></description><link>https://www.c-plusplus.net/forum/post/621440</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/621440</guid><dc:creator><![CDATA[Alexander Kempf]]></dc:creator><pubDate>Tue, 05 Oct 2004 11:24:54 GMT</pubDate></item><item><title><![CDATA[Reply to MSXML 4.0 auslesen eines wertes, den es nicht gib --&amp;gt; FEHLER on Tue, 05 Oct 2004 11:57:38 GMT]]></title><description><![CDATA[<p>Jau , danke Dir Alexander, es ist wie Du sagst: <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<pre><code class="language-cpp">IXMLDOMNodePtr tempnode;

 tempnode = nodeFeld-&gt;get_attributes()-&gt;getQualifiedItem(WideString(asKNOTEN),WideString(&quot;&quot;));

 if(tempnode)
 {
	return tempnode-&gt;get_text();
 }
 else
 {
	return &quot;&quot;;
 }
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/621486</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/621486</guid><dc:creator><![CDATA[YLIREBUS]]></dc:creator><pubDate>Tue, 05 Oct 2004 11:57:38 GMT</pubDate></item></channel></rss>