{"id":4775,"date":"2021-08-06T09:55:06","date_gmt":"2021-08-06T09:55:06","guid":{"rendered":"https:\/\/www.bearloga.space\/?page_id=4775"},"modified":"2021-08-06T09:55:07","modified_gmt":"2021-08-06T09:55:07","slug":"java-dom-parser-razbirat-xml-dokument","status":"publish","type":"page","link":"https:\/\/www.bearloga.space\/uk\/java-dom-parser-razbirat-xml-dokument\/","title":{"rendered":"Java DOM Parser \u2014 \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0442\u044c XML-\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">\u041d\u0438\u0436\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u044b \u0448\u0430\u0433\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0435 \u043f\u0440\u0438 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0447\u0435\u0441\u043a\u043e\u043c \u0430\u043d\u0430\u043b\u0438\u0437\u0435 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c JDOM Parser.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>\u0418\u043c\u043f\u043e\u0440\u0442 \u043f\u0430\u043a\u0435\u0442\u043e\u0432, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0445 \u0441 XML.<\/li><li>\u0421\u043e\u0437\u0434\u0430\u0442\u044c SAXBuilder.<\/li><li>\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442 \u0438\u0437 \u0444\u0430\u0439\u043b\u0430 \u0438\u043b\u0438 \u043f\u043e\u0442\u043e\u043a\u0430<\/li><li>\u0418\u0437\u0432\u043b\u0435\u0447\u044c \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442<\/li><li>\u0418\u0437\u0443\u0447\u0438\u0442\u044c \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u044b<\/li><li>\u0418\u0437\u0443\u0447\u0438\u0442\u044c \u043f\u043e\u0434\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\u0418\u043c\u043f\u043e\u0440\u0442 \u043f\u0430\u043a\u0435\u0442\u043e\u0432, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0445 \u0441 XML<\/h3>\n\n\n\n<pre class=\"wp-block-preformatted\">import org.w3c.dom.*;\nimport javax.xml.parsers.*;\nimport java.io.*;<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">\u0421\u043e\u0437\u0434\u0430\u0442\u044c DocumentBuilder<\/h3>\n\n\n\n<pre class=\"wp-block-preformatted\">DocumentBuilderFactory factory =\nDocumentBuilderFactory.newInstance();\nDocumentBuilder builder = factory.newDocumentBuilder();<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442 \u0438\u0437 \u0444\u0430\u0439\u043b\u0430 \u0438\u043b\u0438 \u043f\u043e\u0442\u043e\u043a\u0430<\/h3>\n\n\n\n<pre class=\"wp-block-preformatted\">StringBuilder xmlStringBuilder = new StringBuilder();\nxmlStringBuilder.append(\"&lt;?xml version=\"1.0\"?&gt; &lt;class&gt; &lt;\/class&gt;\");\nByteArrayInputStream input = new ByteArrayInputStream(\n   xmlStringBuilder.toString().getBytes(\"UTF-8\"));\nDocument doc = builder.parse(input);<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">\u0418\u0437\u0432\u043b\u0435\u0447\u044c \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442<\/h3>\n\n\n\n<pre class=\"wp-block-preformatted\">Element root = document.getDocumentElement();<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">\u0418\u0437\u0443\u0447\u0438\u0442\u044c \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u044b<\/h3>\n\n\n\n<pre class=\"wp-block-preformatted\">\/\/returns specific attribute\ngetAttribute(\"attributeName\");\n\n\/\/returns a Map (table) of names\/values\ngetAttributes();<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">\u0418\u0437\u0443\u0447\u0438\u0442\u044c \u043f\u043e\u0434\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b<\/h3>\n\n\n\n<pre class=\"wp-block-preformatted\">\/\/returns a list of subelements of specified name\ngetElementsByTagName(\"subelementName\");\n\n\/\/returns a list of all child nodes\ngetChildNodes();<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\u0414\u0435\u043c\u043e-\u043f\u0440\u0438\u043c\u0435\u0440<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u043e\u0442 \u0432\u0445\u043e\u0434\u043d\u043e\u0439 XML-\u0444\u0430\u0439\u043b, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u043f\u0440\u043e\u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u2014<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;?xml version = \"1.0\"?&gt;\n&lt;class&gt;\n   &lt;student rollno = \"393\"&gt;\n      &lt;firstname&gt;dinkar&lt;\/firstname&gt;\n      &lt;lastname&gt;kad&lt;\/lastname&gt;\n      &lt;nickname&gt;dinkar&lt;\/nickname&gt;\n      &lt;marks&gt;85&lt;\/marks&gt;\n   &lt;\/student&gt;\n   \n   &lt;student rollno = \"493\"&gt;\n      &lt;firstname&gt;Vaneet&lt;\/firstname&gt;\n      &lt;lastname&gt;Gupta&lt;\/lastname&gt;\n      &lt;nickname&gt;vinni&lt;\/nickname&gt;\n      &lt;marks&gt;95&lt;\/marks&gt;\n   &lt;\/student&gt;\n   \n   &lt;student rollno = \"593\"&gt;\n      &lt;firstname&gt;jasvir&lt;\/firstname&gt;\n      &lt;lastname&gt;singn&lt;\/lastname&gt;\n      &lt;nickname&gt;jazz&lt;\/nickname&gt;\n      &lt;marks&gt;90&lt;\/marks&gt;\n   &lt;\/student&gt;\n&lt;\/class&gt;<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">DomParserDemo.java<\/h3>\n\n\n\n<pre class=\"wp-block-preformatted\">package com.tutorialspoint.xml;\n\nimport java.io.File;\nimport javax.xml.parsers.DocumentBuilderFactory;\nimport javax.xml.parsers.DocumentBuilder;\nimport org.w3c.dom.Document;\nimport org.w3c.dom.NodeList;\nimport org.w3c.dom.Node;\nimport org.w3c.dom.Element;\n\npublic class DomParserDemo {\n\n   public static void main(String[] args) {\n\n      try {\n         File inputFile = new File(\"input.txt\");\n         DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();\n         DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();\n         Document doc = dBuilder.parse(inputFile);\n         doc.getDocumentElement().normalize();\n         System.out.println(\"Root element :\" + doc.getDocumentElement().getNodeName());\n         NodeList nList = doc.getElementsByTagName(\"student\");\n         System.out.println(\"----------------------------\");\n         \n         for (int temp = 0; temp &lt; nList.getLength(); temp++) {\n            Node nNode = nList.item(temp);\n            System.out.println(\"\\nCurrent Element :\" + nNode.getNodeName());\n            \n            if (nNode.getNodeType() == Node.ELEMENT_NODE) {\n               Element eElement = (Element) nNode;\n               System.out.println(\"Student roll no : \" \n                  + eElement.getAttribute(\"rollno\"));\n               System.out.println(\"First Name : \" \n                  + eElement\n                  .getElementsByTagName(\"firstname\")\n                  .item(0)\n                  .getTextContent());\n               System.out.println(\"Last Name : \" \n                  + eElement\n                  .getElementsByTagName(\"lastname\")\n                  .item(0)\n                  .getTextContent());\n               System.out.println(\"Nick Name : \" \n                  + eElement\n                  .getElementsByTagName(\"nickname\")\n                  .item(0)\n                  .getTextContent());\n               System.out.println(\"Marks : \" \n                  + eElement\n                  .getElementsByTagName(\"marks\")\n                  .item(0)\n                  .getTextContent());\n            }\n         }\n      } catch (Exception e) {\n         e.printStackTrace();\n      }\n   }\n}<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>\u041d\u0438\u0436\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u044b \u0448\u0430\u0433\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0435 \u043f\u0440\u0438 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0447\u0435\u0441\u043a\u043e\u043c \u0430\u043d\u0430\u043b\u0438\u0437\u0435 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c JDOM Parser. \u0418\u043c\u043f\u043e\u0440\u0442 \u043f\u0430\u043a\u0435\u0442\u043e\u0432, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0445 \u0441 XML. \u0421\u043e\u0437\u0434\u0430\u0442\u044c SAXBuilder. \u0421\u043e\u0437\u0434\u0430\u0442\u044c [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"categories":[153],"tags":[],"class_list":["post-4775","page","type-page","status-publish","hentry","category-java-xml"],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.bearloga.space\/uk\/wp-json\/wp\/v2\/pages\/4775","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bearloga.space\/uk\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.bearloga.space\/uk\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.bearloga.space\/uk\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bearloga.space\/uk\/wp-json\/wp\/v2\/comments?post=4775"}],"version-history":[{"count":0,"href":"https:\/\/www.bearloga.space\/uk\/wp-json\/wp\/v2\/pages\/4775\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.bearloga.space\/uk\/wp-json\/wp\/v2\/media?parent=4775"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bearloga.space\/uk\/wp-json\/wp\/v2\/categories?post=4775"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bearloga.space\/uk\/wp-json\/wp\/v2\/tags?post=4775"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}