{"id":55000233,"date":"2020-08-01T00:00:00","date_gmt":"2020-11-26T11:26:14","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=233"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"XMLDokumente_schnell_lesen_mit_XmlReader","status":"publish","type":"post","link":"https:\/\/vbentwickler.de\/XMLDokumente_schnell_lesen_mit_XmlReader\/","title":{"rendered":"XML-Dokumente schnell lesen mit XmlReader"},"content":{"rendered":"<p><b>Unter .NET gibt es verschiedene Methoden und Klassen, mit denen Sie auf die Daten in XML-Dokumenten zugreifen k&ouml;nnen. Diese nutzen Sie je nach Einsatzzweck. Wenn Sie sehr gro&szlig;e Dateien einlesen wollen, bietet sich die XmlReader-Klasse an. Mit dieser durchlaufen Sie das XML-Dokument sequenziell, das hei&szlig;t, Element f&uuml;r Element. Dieser Artikel zeigt, wie Sie mit den Methoden der XmlReader-Klasse auf die Elemente eines XML-Dokuments zugreifen. Au&szlig;erdem schauen wir uns an, wie Sie die eingelesen Inhalte in Objekte schreiben k&ouml;nnen, &uuml;ber die Sie die Inhalte dann in die Tabellen einer Datenbank eintragen.<\/b><\/p>\n<p>Wer unter Access\/VBA auf XML-Dokumente zugegriffen hat, hat dazu in der Regel das Document Object Model verwendet und dabei die Elemente mit den gew&uuml;nschten Daten gezielt angesteuert. Unter VBA gibt es noch eine weitere Technik namens SAX. Diese ist recht kompliziert und wird sehr selten verwendet. Dieser Technik kommt der hier verwendete <b>XmlReader <\/b>jedoch recht nahe. Seine Handhabung ist allerdings einfacher als bei SAX.<\/p>\n<p><b>Dokument &ouml;ffnen<\/b><\/p>\n<p>Um ein XML-Dokument zu &ouml;ffnen, ben&ouml;tigen wir ein Objekt auf Basis der <b>XMLReader<\/b>-Klasse. Diese ist Teil des Namespaces <b>System.XML<\/b>, den wir mit der folgenden Anweisung etwa in der Code behind-Klasse eines Fensters einer neuen Desktop-Anwendung auf Basis von XAML und VB referenzieren:<\/p>\n<pre>Imports System.Xml<\/pre>\n<p>Danach k&ouml;nnen wir auf die <b>XmlReader<\/b>-Klasse und ihre Elemente zugreifen. Bei der Klasse handelt es sich um eine abstrakte Klasse, das hei&szlig;t, Sie k&ouml;nnen diese nicht instanzieren. Wir k&ouml;nnen aber dennoch eine Objektvariable nutzen, um auf das zu lesende XML-Dokument zuzugreifen. Um ein XML-Dokument zu &ouml;ffnen, das auf der Festplatte liegt, verwenden Sie die <b>Create<\/b>-Methode. Dieser &uuml;bergeben wir den Pfad zu der einzulesenden XML-Datei:<\/p>\n<pre><span style=\"color:blue;\">Dim <\/span>objReader<span style=\"color:blue;\"> As <\/span>XmlReader\r\n<span style=\"color:blue;\">Dim <\/span>strPfad<span style=\"color:blue;\"> As String<\/span>\r\nstrPfad = \"c:\\...\\Kunden.xml\"\r\nobjReader = XmlReader.Create(strPfad)<\/pre>\n<p>Danach befindet sich das XML-Dokument im Zugriff. Wir schauen uns die Funktionsweise der Klasse <b>XmlReader <\/b>anhand des folgenden XML-Dokuments an:<\/p>\n<pre>&lt;xml version=\"1.0\" encoding=\"utf-8\"&gt;\r\n&lt;Bestellverwaltung&gt;\r\n   &lt;!--Auflistung der Kunden--&gt;\r\n   &lt;Kunden&gt;\r\n     &lt;Kunde ID=\"1\"&gt;\r\n       &lt;Firma&gt;Andr&eacute; Minhorst Verlag&lt;\/Firma&gt;\r\n       &lt;Vorname&gt;Andr&eacute;&lt;\/Vorname&gt;\r\n       &lt;Nachname&gt;Minhorst&lt;\/Nachname&gt;\r\n       &lt;Beschreibung&gt;&lt;![CDATA[Beschreibung mit CDATA]]&gt;&lt;\/Beschreibung&gt;\r\n     &lt;\/Kunde&gt;\r\n     &lt;Kunde ID=\"2\"&gt;\r\n       &lt;Firma&gt;M&uuml;ller GmbH&lt;\/Firma&gt;\r\n       &lt;Vorname&gt;Klaus&lt;\/Vorname&gt;\r\n       &lt;Nachname&gt;M&uuml;ller&lt;\/Nachname&gt;\r\n     &lt;\/Kunde&gt;\r\n   &lt;\/Kunden&gt;\r\n&lt;\/Bestellverwaltung&gt;<\/pre>\n<p><b>XML-Dokument sequenziell durchlaufen mit Read<\/b><\/p>\n<p>Im Gegensatz zum Durchlaufen einer Textdatei durchlaufen wir hier nicht Zeile f&uuml;r Zeile, sondern Element f&uuml;r Element. Ein Element ist dabei nicht etwa eine Einheit wie <b><Vorname>Andr&eacute;<\/Nachname><\/b>. In diesem Fall sind <b><Vorname><\/b>, <b>Andr&eacute; <\/b>und <b><\/Vorname> <\/b>jeweils ein Element. Auch der Prolog des XML-Dokuments ist ein eigenes Element. Auf diese Elemente greifen wir mit der <b>Read<\/b>-Methode zu. Nachdem wir diese erstmals aufgerufen haben, referenziert <b>objReader <\/b>das erste Element, in diesem Fall den Prolog. Danach geht es weiter mit den folgenden Elementen &#8211; also den Starttags, den enthaltenen Texten, den Endtags und auch den leeren Elementen dazwischen, den sogenannten <b>Whitespace<\/b>-Elementen. Wie erkennen wir nun, welchen Elementtyp <b>objReader <\/b>gerade geladen hat Dazu k&ouml;nnen wir die Eigenschaft NodeType verwenden. Diesen lassen wir uns in einer ersten Schleife ausgeben:<\/p>\n<pre><span style=\"color:blue;\">Do While<\/span> objReader.Read\r\n     <span style=\"color:blue;\">Debug.Print<\/span>(objReader.NodeType)\r\n<span style=\"color:blue;\">Loop<\/span><\/pre>\n<p>Wir durchlaufen also alle Elemente in einer <b>Do While<\/b>-Schleife, deren Abbruch <b>objReader.Read <\/b>lautet. Die <b>Read<\/b>-Methode liefert den Wert <b>True <\/b>zur&uuml;ck, falls noch ein neues Element eingelesen werden konnte und den Wert <b>False<\/b>, wenn das Ende des Dokuments erreicht wurde. Das Ergebnis der Ausgabe ist wenig aussagekr&auml;ftig, denn <b>NodeType <\/b>liefert einen Zahlenwert (siehe Bild 1).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2020_04\/pic_233_001.png\" alt=\"Elementtypen\" width=\"199,8643\" height=\"776,396\"\/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 1: Elementtypen<\/span><\/b><\/p>\n<p>Welcher Wert entspricht nun welchem Elementtyp Das k&ouml;nnen wir uns im Objektkatalog ansehen, wo wir nach der Eigenschaft <b>NodeType<\/b> suchen und den Eintrag <b>System.Xml.XmlNodeType <\/b>vorfinden. Beim Anklicken der Elemente zeigt der Dialog auch die Zahlenwerte an, die wir mit denen unserer Ausgabe abgleichen k&ouml;nnen (siehe Bild 2).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2020_04\/pic_233_002.png\" alt=\"Elementtypen im Objektkatalog\" width=\"649,559\" height=\"429,2454\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 2: Elementtypen im Objektkatalog<\/span><\/b><\/p>\n<p>Also reichern wir unsere <b>Do While<\/b>-Schleife um eine <b>Select Case<\/b>-Bedingung an, welche den Typ ermittelt und diesen im Direktbereich ausgibt. F&uuml;r uns sind die folgenden Elementtypen interessant:<\/p>\n<ul>\n<li><b>Attribute<\/b>: Attribut<\/li>\n<li><b>CDATA<\/b>: Block mit einem CDATA-Abschnitt<\/li>\n<li><b>Comment<\/b>: Kommentar, zum Beispiel <b><!--Kommentar--><\/b><\/li>\n<li><b>Element<\/b>: Starttag, zum Beispiel <b><Kunde><\/b><\/li>\n<li><b>EndElement<\/b>: Endtag, zum Beispiel <b><\/Kunde><\/b><\/li>\n<li><b>Text<\/b>: Text in einem Element<\/li>\n<li><b>Whitespace<\/b>: Leerraum zwischen Elementen<\/li>\n<li><b>XmlDeclaration<\/b>: XML-Deklarationszeile, zum Beispiel <b><xml version='1.0'><\/b><\/li>\n<\/ul>\n<p>In der folgenden Schleife geben wir die Typen der Elemente unseres Dokuments aus:<\/p>\n<pre><span style=\"color:blue;\">Do While<\/span> objReader.Read\r\n     Select Case objReader.NodeType\r\n         <span style=\"color:blue;\">Case <\/span>XmlNodeType.XmlDeclaration\r\n             <span style=\"color:blue;\">Debug.Print<\/span>(\"XmlDeclaration\")\r\n         <span style=\"color:blue;\">Case <\/span>XmlNodeType.Element\r\n             <span style=\"color:blue;\">Debug.Print<\/span>(\"Element\")\r\n         <span style=\"color:blue;\">Case <\/span>XmlNodeType.EndElement\r\n             <span style=\"color:blue;\">Debug.Print<\/span>(\"EndElement\")\r\n         <span style=\"color:blue;\">Case <\/span>XmlNodeType.Whitespace\r\n             <span style=\"color:blue;\">Debug.Print<\/span>(\"Whitespace\")\r\n         <span style=\"color:blue;\">Case <\/span>XmlNodeType.Text\r\n             <span style=\"color:blue;\">Debug.Print<\/span>(\"Text\")\r\n         <span style=\"color:blue;\">Case Else<\/span>\r\n             <span style=\"color:blue;\">Debug.Print<\/span>(objReader.NodeType)\r\n     <span style=\"color:blue;\">End Select<\/span>\r\n<span style=\"color:blue;\">Loop<\/span><\/pre>\n<p>Nun wollen wir f&uuml;r die unterschiedlichen Elementtypen entsprechende Ausgaben bewirken. Diese erhalten wir &uuml;ber die Eigenschaften des aktuellen Elements. <b>NodeType <\/b>war die erste Eigenschaft, die Sie kennengelernt haben. Es gibt jedoch noch weitere Eigenschaften, die f&uuml;r uns interessant sein k&ouml;nnen:<\/p>\n<ul>\n<li><b>Depth<\/b>: Tiefe des aktuellen Elements in der Hierarchie<\/li>\n<li><b>IsStartElement<\/b>: Gibt an, ob das aktuelle Element ein Starttag ist. Der folgende Code gibt beispielsweise alle Namen von Starttags aus:<\/li>\n<\/ul>\n<pre>         <span style=\"color:blue;\">Do While<\/span> objReader.Read\r\n             <span style=\"color:blue;\">If <\/span>(objReader.IsStartElement)<span style=\"color:blue;\"> Then<\/span>\r\n                 <span style=\"color:blue;\">Debug.Print<\/span>(objReader.Name)\r\n             <span style=\"color:blue;\">End If<\/span>\r\n         <span style=\"color:blue;\">Loop<\/span><\/pre>\n<ul>\n<li><b>Name<\/b>: Name des Elements. Vor allem interessant bei den Elementtypen <b>Element <\/b>und <b>EndElement<\/b>.<\/li>\n<li><b>NodeType<\/b>: Typ des Elements<\/li>\n<li><b>Value<\/b>: Wert des Elements, vor allem interessant bei den Elementtypen <b>Text <\/b>oder <b>Comment<\/b>.<\/li>\n<li><b>IsEmptyElement<\/b>: Gibt an, ob das Element einen Wert enth&auml;lt.<\/li>\n<\/ul>\n<p><b>Attribute erkennen mit HasAttributes und AttributeCount<\/b><\/p>\n<p>M&ouml;glicherweise ist Ihnen aufgefallen, das wir zwar die Inhalte der Elemente ausgegeben haben, jedoch noch nicht die der Attribute. Diese erhalten wir auf einem anderen Weg. Grunds&auml;tzlich finden wir Attribute nur bei Elementen des Typs <b>Element<\/b>. Hier k&ouml;nnen wir mit der Eigenschaft <b>HasAttributes <\/b>pr&uuml;fen, ob &uuml;berhaupt Attribute vorliegen. Ist das der Fall, l&auml;sst sich mit der Eigenschaft <b>AttributeCount <\/b>die Anzahl der Attribute ermitteln. Wir k&ouml;nnen diese aber auch direkt in einer <b>Do While<\/b>-Schleife durchlaufen.<\/p>\n<p>Dazu verwenden wir wieder eine Abbruchbedingung, die gleichzeitig das n&auml;chste Attribut einliest. Diese lautet <b>MoveToNextAttribut<\/b>. Die Methode liefert den Wert <b>True<\/b>, wenn sie ein weiteres Attribut gefunden hat und <b>False<\/b>, wenn kein weiteres Attribut vorliegt. Den Namen des Attributs ermitteln Sie dann wiederum mit der Eigenschaft <b>Name<\/b>. Den Wert des Attributs liefert die Eigenschaft <b>Value<\/b>.<\/p>\n<div class=\"rcp_restricted\"><p><span style=\"color: #ff0000\">M&ouml;chten Sie weiterlesen? Dann l&ouml;sen Sie Ihr Ticket!<\/span><br \/>\n<span style=\"color: #ff0000\">Hier geht es zur Bestellung des Jahresabonnements des Magazins <strong>Visual Basic Entwickler<\/strong>:<\/span><br \/>\n<span style=\"color: #ff0000\"><a style=\"color: #ff0000\" href=\"https:\/\/shop.minhorst.com\/magazine\/363\/visual-basic-entwickler-jahresabonnement?c=77\">Zur Bestellung ...<\/a><\/span><br \/>\n<span style=\"color: #ff0000\">Danach greifen Sie sofort auf <strong>alle rund 200 Artikel<\/strong> unseres Angebots zu - auch auf diesen hier!<\/span><br \/>\n<span style=\"color: #000000\">Oder haben Sie bereits Zugangsdaten? Dann loggen Sie sich gleich hier ein:<\/span><\/p>\n<\/div>\n\n\t\n\t<form id=\"rcp_login_form\"  class=\"rcp_form\" method=\"POST\" action=\"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000233\/\">\n\n\t\t\n\t\t<fieldset class=\"rcp_login_data\">\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_login\">Username or Email<\/label>\n\t\t\t\t<input name=\"rcp_user_login\" id=\"rcp_user_login\" class=\"required\" type=\"text\"\/>\n\t\t\t<\/p>\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_pass\">Password<\/label>\n\t\t\t\t<input name=\"rcp_user_pass\" id=\"rcp_user_pass\" class=\"required\" type=\"password\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t\t<p>\n\t\t\t\t<input type=\"checkbox\" name=\"rcp_user_remember\" id=\"rcp_user_remember\" value=\"1\"\/>\n\t\t\t\t<label for=\"rcp_user_remember\">Remember me<\/label>\n\t\t\t<\/p>\n\t\t\t<p class=\"rcp_lost_password\"><a href=\"\/data\/wp\/v2\/posts\/55000233?rcp_action=lostpassword\"><\/a><\/p>\n\t\t\t<p>\n\t\t\t\t<input type=\"hidden\" name=\"rcp_action\" value=\"login\"\/>\n\t\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_redirect\" value=\"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000233\/\"\/>\n\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_login_nonce\" value=\"fa8d20e17b\"\/>\n\t\t\t\t<input id=\"rcp_login_submit\" class=\"rcp-button\" type=\"submit\" value=\"Login\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t<\/fieldset>\n\n\t\t\n\t<\/form>\n<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Unter .NET gibt es verschiedene Methoden und Klassen, mit denen Sie auf die Daten in XML-Dokumenten zugreifen k&ouml;nnen. Diese nutzen Sie je nach Einsatzzweck. Wenn Sie sehr gro&szlig;e Dateien einlesen wollen, bietet sich die XmlReader-Klasse an. Mit dieser durchlaufen Sie das XML-Dokument sequenziell, das hei&szlig;t, Element f&uuml;r Element. Dieser Artikel zeigt, wie Sie mit den Methoden der XmlReader-Klasse auf die Elemente eines XML-Dokuments zugreifen. Au&szlig;erdem schauen wir uns an, wie Sie die eingelesen Inhalte in Objekte schreiben k&ouml;nnen, &uuml;ber die Sie die Inhalte dann in die Tabellen einer Datenbank eintragen.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[662020,66042020,44000035,44000012,44000017],"tags":[],"yst_prominent_words":[],"class_list":["post-55000233","post","type-post","status-publish","format-standard","hentry","category-662020","category-66042020","category-COMDLLs_programmieren","category-Interaktiv","category-WebApps_Razor_Pages"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"Unter .NET gibt es verschiedene Methoden und Klassen, mit denen Sie auf die Daten in XML-Dokumenten zugreifen k\u00f6nnen. Diese nutzen Sie je nach Einsatzzweck. Wenn Sie sehr gro\u00dfe Dateien einlesen wollen, bietet sich die XmlReader-Klasse an. Mit dieser durchlaufen Sie das XML-Dokument sequenziell, das hei\u00dft, Element f\u00fcr Element. Dieser Artikel zeigt, wie Sie mit den Methoden der XmlReader-Klasse auf die Elemente eines XML-Dokuments zugreifen. Au\u00dferdem schauen wir uns an, wie Sie die eingelesen Inhalte in Objekte schreiben k\u00f6nnen, \u00fcber die Sie die Inhalte dann in die Tabellen einer Datenbank eintragen.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Andr\u00e9 Minhorst\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/vbentwickler.de\/XMLDokumente_schnell_lesen_mit_XmlReader\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Visual Basic Entwickler - Das Magazin f\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"XML-Dokumente schnell lesen mit XmlReader - Visual Basic Entwickler\" \/>\n\t\t<meta property=\"og:description\" content=\"Unter .NET gibt es verschiedene Methoden und Klassen, mit denen Sie auf die Daten in XML-Dokumenten zugreifen k\u00f6nnen. Diese nutzen Sie je nach Einsatzzweck. Wenn Sie sehr gro\u00dfe Dateien einlesen wollen, bietet sich die XmlReader-Klasse an. Mit dieser durchlaufen Sie das XML-Dokument sequenziell, das hei\u00dft, Element f\u00fcr Element. Dieser Artikel zeigt, wie Sie mit den Methoden der XmlReader-Klasse auf die Elemente eines XML-Dokuments zugreifen. Au\u00dferdem schauen wir uns an, wie Sie die eingelesen Inhalte in Objekte schreiben k\u00f6nnen, \u00fcber die Sie die Inhalte dann in die Tabellen einer Datenbank eintragen.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/vbentwickler.de\/XMLDokumente_schnell_lesen_mit_XmlReader\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-11-26T11:26:14+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"-001-11-30T00:00:00+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"XML-Dokumente schnell lesen mit XmlReader - Visual Basic Entwickler\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Unter .NET gibt es verschiedene Methoden und Klassen, mit denen Sie auf die Daten in XML-Dokumenten zugreifen k\u00f6nnen. Diese nutzen Sie je nach Einsatzzweck. Wenn Sie sehr gro\u00dfe Dateien einlesen wollen, bietet sich die XmlReader-Klasse an. Mit dieser durchlaufen Sie das XML-Dokument sequenziell, das hei\u00dft, Element f\u00fcr Element. Dieser Artikel zeigt, wie Sie mit den Methoden der XmlReader-Klasse auf die Elemente eines XML-Dokuments zugreifen. Au\u00dferdem schauen wir uns an, wie Sie die eingelesen Inhalte in Objekte schreiben k\u00f6nnen, \u00fcber die Sie die Inhalte dann in die Tabellen einer Datenbank eintragen.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/XMLDokumente_schnell_lesen_mit_XmlReader\\\/#blogposting\",\"name\":\"XML-Dokumente schnell lesen mit XmlReader - Visual Basic Entwickler\",\"headline\":\"XML-Dokumente schnell lesen mit XmlReader\",\"author\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#organization\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"..\\\/fileadmin\\\/_temp_\\\/2020_04\\\/pic_233_001.png\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/XMLDokumente_schnell_lesen_mit_XmlReader\\\/#articleImage\"},\"datePublished\":\"2020-08-01T00:00:00+00:00\",\"dateModified\":\"-0001-11-30T00:00:00+00:00\",\"inLanguage\":\"de-DE\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/XMLDokumente_schnell_lesen_mit_XmlReader\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/XMLDokumente_schnell_lesen_mit_XmlReader\\\/#webpage\"},\"articleSection\":\"2020, 4\\\/2020, COM-DLLs programmieren, Interaktiv, Web-Apps: Razor Pages\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/XMLDokumente_schnell_lesen_mit_XmlReader\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vbentwickler.de\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2020\\\/#listItem\",\"name\":\"2020\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2020\\\/#listItem\",\"position\":2,\"name\":\"2020\",\"item\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2020\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2020\\\/4\\\/2020\\\/#listItem\",\"name\":\"4\\\/2020\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2020\\\/4\\\/2020\\\/#listItem\",\"position\":3,\"name\":\"4\\\/2020\",\"item\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2020\\\/4\\\/2020\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/XMLDokumente_schnell_lesen_mit_XmlReader\\\/#listItem\",\"name\":\"XML-Dokumente schnell lesen mit XmlReader\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2020\\\/#listItem\",\"name\":\"2020\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/XMLDokumente_schnell_lesen_mit_XmlReader\\\/#listItem\",\"position\":4,\"name\":\"XML-Dokumente schnell lesen mit XmlReader\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2020\\\/4\\\/2020\\\/#listItem\",\"name\":\"4\\\/2020\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#organization\",\"name\":\"Datenbankentwickler\",\"description\":\"Das Magazin f\\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/wp-content\\\/uploads\\\/2022\\\/08\\\/cropped-header_vbe-1.png\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/XMLDokumente_schnell_lesen_mit_XmlReader\\\/#organizationLogo\",\"width\":664,\"height\":225},\"image\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/XMLDokumente_schnell_lesen_mit_XmlReader\\\/#organizationLogo\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/#author\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/\",\"name\":\"Andr\\u00e9 Minhorst\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/XMLDokumente_schnell_lesen_mit_XmlReader\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Andr\\u00e9 Minhorst\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/XMLDokumente_schnell_lesen_mit_XmlReader\\\/#webpage\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/XMLDokumente_schnell_lesen_mit_XmlReader\\\/\",\"name\":\"XML-Dokumente schnell lesen mit XmlReader - Visual Basic Entwickler\",\"description\":\"Unter .NET gibt es verschiedene Methoden und Klassen, mit denen Sie auf die Daten in XML-Dokumenten zugreifen k\\u00f6nnen. Diese nutzen Sie je nach Einsatzzweck. Wenn Sie sehr gro\\u00dfe Dateien einlesen wollen, bietet sich die XmlReader-Klasse an. Mit dieser durchlaufen Sie das XML-Dokument sequenziell, das hei\\u00dft, Element f\\u00fcr Element. Dieser Artikel zeigt, wie Sie mit den Methoden der XmlReader-Klasse auf die Elemente eines XML-Dokuments zugreifen. Au\\u00dferdem schauen wir uns an, wie Sie die eingelesen Inhalte in Objekte schreiben k\\u00f6nnen, \\u00fcber die Sie die Inhalte dann in die Tabellen einer Datenbank eintragen.\",\"inLanguage\":\"de-DE\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/XMLDokumente_schnell_lesen_mit_XmlReader\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/#author\"},\"datePublished\":\"2020-08-01T00:00:00+00:00\",\"dateModified\":\"-0001-11-30T00:00:00+00:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#website\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/\",\"name\":\"Datenbankentwickler\",\"description\":\"Das Magazin f\\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.\",\"inLanguage\":\"de-DE\",\"publisher\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"XML-Dokumente schnell lesen mit XmlReader - Visual Basic Entwickler","description":"Unter .NET gibt es verschiedene Methoden und Klassen, mit denen Sie auf die Daten in XML-Dokumenten zugreifen k\u00f6nnen. Diese nutzen Sie je nach Einsatzzweck. Wenn Sie sehr gro\u00dfe Dateien einlesen wollen, bietet sich die XmlReader-Klasse an. Mit dieser durchlaufen Sie das XML-Dokument sequenziell, das hei\u00dft, Element f\u00fcr Element. Dieser Artikel zeigt, wie Sie mit den Methoden der XmlReader-Klasse auf die Elemente eines XML-Dokuments zugreifen. Au\u00dferdem schauen wir uns an, wie Sie die eingelesen Inhalte in Objekte schreiben k\u00f6nnen, \u00fcber die Sie die Inhalte dann in die Tabellen einer Datenbank eintragen.","canonical_url":"https:\/\/vbentwickler.de\/XMLDokumente_schnell_lesen_mit_XmlReader\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/vbentwickler.de\/XMLDokumente_schnell_lesen_mit_XmlReader\/#blogposting","name":"XML-Dokumente schnell lesen mit XmlReader - Visual Basic Entwickler","headline":"XML-Dokumente schnell lesen mit XmlReader","author":{"@id":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/#author"},"publisher":{"@id":"https:\/\/vbentwickler.de\/#organization"},"image":{"@type":"ImageObject","url":"..\/fileadmin\/_temp_\/2020_04\/pic_233_001.png","@id":"https:\/\/vbentwickler.de\/XMLDokumente_schnell_lesen_mit_XmlReader\/#articleImage"},"datePublished":"2020-08-01T00:00:00+00:00","dateModified":"-0001-11-30T00:00:00+00:00","inLanguage":"de-DE","mainEntityOfPage":{"@id":"https:\/\/vbentwickler.de\/XMLDokumente_schnell_lesen_mit_XmlReader\/#webpage"},"isPartOf":{"@id":"https:\/\/vbentwickler.de\/XMLDokumente_schnell_lesen_mit_XmlReader\/#webpage"},"articleSection":"2020, 4\/2020, COM-DLLs programmieren, Interaktiv, Web-Apps: Razor Pages"},{"@type":"BreadcrumbList","@id":"https:\/\/vbentwickler.de\/XMLDokumente_schnell_lesen_mit_XmlReader\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/vbentwickler.de#listItem","position":1,"name":"Home","item":"https:\/\/vbentwickler.de","nextItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2020\/#listItem","name":"2020"}},{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2020\/#listItem","position":2,"name":"2020","item":"https:\/\/vbentwickler.de\/category\/2020\/","nextItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2020\/4\/2020\/#listItem","name":"4\/2020"},"previousItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2020\/4\/2020\/#listItem","position":3,"name":"4\/2020","item":"https:\/\/vbentwickler.de\/category\/2020\/4\/2020\/","nextItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/XMLDokumente_schnell_lesen_mit_XmlReader\/#listItem","name":"XML-Dokumente schnell lesen mit XmlReader"},"previousItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2020\/#listItem","name":"2020"}},{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/XMLDokumente_schnell_lesen_mit_XmlReader\/#listItem","position":4,"name":"XML-Dokumente schnell lesen mit XmlReader","previousItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2020\/4\/2020\/#listItem","name":"4\/2020"}}]},{"@type":"Organization","@id":"https:\/\/vbentwickler.de\/#organization","name":"Datenbankentwickler","description":"Das Magazin f\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.","url":"https:\/\/vbentwickler.de\/","logo":{"@type":"ImageObject","url":"https:\/\/vbentwickler.de\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png","@id":"https:\/\/vbentwickler.de\/XMLDokumente_schnell_lesen_mit_XmlReader\/#organizationLogo","width":664,"height":225},"image":{"@id":"https:\/\/vbentwickler.de\/XMLDokumente_schnell_lesen_mit_XmlReader\/#organizationLogo"}},{"@type":"Person","@id":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/#author","url":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/","name":"Andr\u00e9 Minhorst","image":{"@type":"ImageObject","@id":"https:\/\/vbentwickler.de\/XMLDokumente_schnell_lesen_mit_XmlReader\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g","width":96,"height":96,"caption":"Andr\u00e9 Minhorst"}},{"@type":"WebPage","@id":"https:\/\/vbentwickler.de\/XMLDokumente_schnell_lesen_mit_XmlReader\/#webpage","url":"https:\/\/vbentwickler.de\/XMLDokumente_schnell_lesen_mit_XmlReader\/","name":"XML-Dokumente schnell lesen mit XmlReader - Visual Basic Entwickler","description":"Unter .NET gibt es verschiedene Methoden und Klassen, mit denen Sie auf die Daten in XML-Dokumenten zugreifen k\u00f6nnen. Diese nutzen Sie je nach Einsatzzweck. Wenn Sie sehr gro\u00dfe Dateien einlesen wollen, bietet sich die XmlReader-Klasse an. Mit dieser durchlaufen Sie das XML-Dokument sequenziell, das hei\u00dft, Element f\u00fcr Element. Dieser Artikel zeigt, wie Sie mit den Methoden der XmlReader-Klasse auf die Elemente eines XML-Dokuments zugreifen. Au\u00dferdem schauen wir uns an, wie Sie die eingelesen Inhalte in Objekte schreiben k\u00f6nnen, \u00fcber die Sie die Inhalte dann in die Tabellen einer Datenbank eintragen.","inLanguage":"de-DE","isPartOf":{"@id":"https:\/\/vbentwickler.de\/#website"},"breadcrumb":{"@id":"https:\/\/vbentwickler.de\/XMLDokumente_schnell_lesen_mit_XmlReader\/#breadcrumblist"},"author":{"@id":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/#author"},"creator":{"@id":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/#author"},"datePublished":"2020-08-01T00:00:00+00:00","dateModified":"-0001-11-30T00:00:00+00:00"},{"@type":"WebSite","@id":"https:\/\/vbentwickler.de\/#website","url":"https:\/\/vbentwickler.de\/","name":"Datenbankentwickler","description":"Das Magazin f\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.","inLanguage":"de-DE","publisher":{"@id":"https:\/\/vbentwickler.de\/#organization"}}]},"og:locale":"de_DE","og:site_name":"Visual Basic Entwickler - Das Magazin f\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.","og:type":"article","og:title":"XML-Dokumente schnell lesen mit XmlReader - Visual Basic Entwickler","og:description":"Unter .NET gibt es verschiedene Methoden und Klassen, mit denen Sie auf die Daten in XML-Dokumenten zugreifen k\u00f6nnen. Diese nutzen Sie je nach Einsatzzweck. Wenn Sie sehr gro\u00dfe Dateien einlesen wollen, bietet sich die XmlReader-Klasse an. Mit dieser durchlaufen Sie das XML-Dokument sequenziell, das hei\u00dft, Element f\u00fcr Element. Dieser Artikel zeigt, wie Sie mit den Methoden der XmlReader-Klasse auf die Elemente eines XML-Dokuments zugreifen. Au\u00dferdem schauen wir uns an, wie Sie die eingelesen Inhalte in Objekte schreiben k\u00f6nnen, \u00fcber die Sie die Inhalte dann in die Tabellen einer Datenbank eintragen.","og:url":"https:\/\/vbentwickler.de\/XMLDokumente_schnell_lesen_mit_XmlReader\/","og:image":"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png","og:image:secure_url":"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png","article:published_time":"2020-11-26T11:26:14+00:00","article:modified_time":"-001-11-30T00:00:00+00:00","twitter:card":"summary_large_image","twitter:title":"XML-Dokumente schnell lesen mit XmlReader - Visual Basic Entwickler","twitter:description":"Unter .NET gibt es verschiedene Methoden und Klassen, mit denen Sie auf die Daten in XML-Dokumenten zugreifen k\u00f6nnen. Diese nutzen Sie je nach Einsatzzweck. Wenn Sie sehr gro\u00dfe Dateien einlesen wollen, bietet sich die XmlReader-Klasse an. Mit dieser durchlaufen Sie das XML-Dokument sequenziell, das hei\u00dft, Element f\u00fcr Element. Dieser Artikel zeigt, wie Sie mit den Methoden der XmlReader-Klasse auf die Elemente eines XML-Dokuments zugreifen. Au\u00dferdem schauen wir uns an, wie Sie die eingelesen Inhalte in Objekte schreiben k\u00f6nnen, \u00fcber die Sie die Inhalte dann in die Tabellen einer Datenbank eintragen.","twitter:image":"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png"},"aioseo_meta_data":{"post_id":"55000233","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"limit_modified_date":false,"created":"2024-01-30 16:07:42","updated":"2026-05-16 08:47:44","ai":null,"breadcrumb_settings":null,"seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/vbentwickler.de\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/vbentwickler.de\/category\/2020\/\" title=\"2020\">2020<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/vbentwickler.de\/category\/2020\/4\/2020\/\" title=\"4\/2020\">4\/2020<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tXML-Dokumente schnell lesen mit XmlReader\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/vbentwickler.de"},{"label":"2020","link":"https:\/\/vbentwickler.de\/category\/2020\/"},{"label":"4\/2020","link":"https:\/\/vbentwickler.de\/category\/2020\/4\/2020\/"},{"label":"XML-Dokumente schnell lesen mit XmlReader","link":"https:\/\/vbentwickler.de\/XMLDokumente_schnell_lesen_mit_XmlReader\/"}],"_links":{"self":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000233","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/comments?post=55000233"}],"version-history":[{"count":0,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000233\/revisions"}],"wp:attachment":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/media?parent=55000233"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/categories?post=55000233"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/tags?post=55000233"},{"taxonomy":"yst_prominent_words","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/yst_prominent_words?post=55000233"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}