{"id":4785,"date":"2021-08-06T10:03:41","date_gmt":"2021-08-06T10:03:41","guid":{"rendered":"https:\/\/www.bearloga.space\/?page_id=4785"},"modified":"2021-08-06T10:03:42","modified_gmt":"2021-08-06T10:03:42","slug":"java-sax-parser-razbirat-xml-dokument","status":"publish","type":"page","link":"https:\/\/www.bearloga.space\/en\/java-sax-parser-razbirat-xml-dokument\/","title":{"rendered":"Java SAX 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\">\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\">UserHandler.java<\/h3>\n\n\n\n<pre class=\"wp-block-preformatted\">package com.tutorialspoint.xml;\n\nimport org.xml.sax.Attributes;\nimport org.xml.sax.SAXException;\nimport org.xml.sax.helpers.DefaultHandler;\n\npublic class UserHandler extends DefaultHandler {\n\n   boolean bFirstName = false;\n   boolean bLastName = false;\n   boolean bNickName = false;\n   boolean bMarks = false;\n\n   @Override\n   public void startElement(String uri, \n   String localName, String qName, Attributes attributes) throws SAXException {\n\n      if (qName.equalsIgnoreCase(\"student\")) {\n         String rollNo = attributes.getValue(\"rollno\");\n         System.out.println(\"Roll No : \" + rollNo);\n      } else if (qName.equalsIgnoreCase(\"firstname\")) {\n         bFirstName = true;\n      } else if (qName.equalsIgnoreCase(\"lastname\")) {\n         bLastName = true;\n      } else if (qName.equalsIgnoreCase(\"nickname\")) {\n         bNickName = true;\n      }\n      else if (qName.equalsIgnoreCase(\"marks\")) {\n         bMarks = true;\n      }\n   }\n\n   @Override\n   public void endElement(String uri, \n   String localName, String qName) throws SAXException {\n      if (qName.equalsIgnoreCase(\"student\")) {\n         System.out.println(\"End Element :\" + qName);\n      }\n   }\n\n   @Override\n   public void characters(char ch[], int start, int length) throws SAXException {\n      \n      if (bFirstName) {\n         System.out.println(\"First Name: \" \n            + new String(ch, start, length));\n         bFirstName = false;\n      } else if (bLastName) {\n         System.out.println(\"Last Name: \" + new String(ch, start, length));\n         bLastName = false;\n      } else if (bNickName) {\n         System.out.println(\"Nick Name: \" + new String(ch, start, length));\n         bNickName = false;\n      } else if (bMarks) {\n         System.out.println(\"Marks: \" + new String(ch, start, length));\n         bMarks = false;\n      }\n   }\n}\n<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">SAXParserDemo.java<\/h3>\n\n\n\n<pre class=\"wp-block-preformatted\">package com.tutorialspoint.xml;\n\nimport java.io.File;\nimport javax.xml.parsers.SAXParser;\nimport javax.xml.parsers.SAXParserFactory;\n\nimport org.xml.sax.Attributes;\nimport org.xml.sax.SAXException;\nimport org.xml.sax.helpers.DefaultHandler;\n\npublic class SAXParserDemo {\n\n   public static void main(String[] args) {\n\n      try {\n         File inputFile = new File(\"input.txt\");\n         SAXParserFactory factory = SAXParserFactory.newInstance();\n         SAXParser saxParser = factory.newSAXParser();\n         UserHandler userhandler = new UserHandler();\n         saxParser.parse(inputFile, userhandler);     \n      } catch (Exception e) {\n         e.printStackTrace();\n      }\n   }   \n}\n\nclass UserHandler extends DefaultHandler {\n\n   boolean bFirstName = false;\n   boolean bLastName = false;\n   boolean bNickName = false;\n   boolean bMarks = false;\n\n   @Override\n   public void startElement(\n      String uri, String localName, String qName, Attributes attributes)\n      throws SAXException {\n      \n      if (qName.equalsIgnoreCase(\"student\")) {\n         String rollNo = attributes.getValue(\"rollno\");\n         System.out.println(\"Roll No : \" + rollNo);\n      } else if (qName.equalsIgnoreCase(\"firstname\")) {\n         bFirstName = true;\n      } else if (qName.equalsIgnoreCase(\"lastname\")) {\n         bLastName = true;\n      } else if (qName.equalsIgnoreCase(\"nickname\")) {\n         bNickName = true;\n      }\n      else if (qName.equalsIgnoreCase(\"marks\")) {\n         bMarks = true;\n      }\n   }\n\n   @Override\n   public void endElement(String uri, \n      String localName, String qName) throws SAXException {\n      \n      if (qName.equalsIgnoreCase(\"student\")) {\n         System.out.println(\"End Element :\" + qName);\n      }\n   }\n\n   @Override\n   public void characters(char ch[], int start, int length) throws SAXException {\n\n      if (bFirstName) {\n         System.out.println(\"First Name: \" + new String(ch, start, length));\n         bFirstName = false;\n      } else if (bLastName) {\n         System.out.println(\"Last Name: \" + new String(ch, start, length));\n         bLastName = false;\n      } else if (bNickName) {\n         System.out.println(\"Nick Name: \" + new String(ch, start, length));\n         bNickName = false;\n      } else if (bMarks) {\n         System.out.println(\"Marks: \" + new String(ch, start, length));\n         bMarks = false;\n      }\n   }\n}<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>\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 &lt;?xml version = &#8220;1.0&#8221;?&gt; &lt;class&gt; &lt;student rollno = &#8220;393&#8221;&gt; &lt;firstname&gt;dinkar&lt;\/firstname&gt; &lt;lastname&gt;kad&lt;\/lastname&gt; &lt;nickname&gt;dinkar&lt;\/nickname&gt; [&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-4785","page","type-page","status-publish","hentry","category-java-xml"],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.bearloga.space\/en\/wp-json\/wp\/v2\/pages\/4785","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bearloga.space\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.bearloga.space\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.bearloga.space\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bearloga.space\/en\/wp-json\/wp\/v2\/comments?post=4785"}],"version-history":[{"count":0,"href":"https:\/\/www.bearloga.space\/en\/wp-json\/wp\/v2\/pages\/4785\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.bearloga.space\/en\/wp-json\/wp\/v2\/media?parent=4785"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bearloga.space\/en\/wp-json\/wp\/v2\/categories?post=4785"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bearloga.space\/en\/wp-json\/wp\/v2\/tags?post=4785"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}