Why XML Parsers Often Are Not Very Useful

Why XML Parsers Often Are Not Very Useful

int start = xml.indexOf(??????)+ ??????.length();int end = xml.indexOf(??????);String name = xml.substring(start, end);

This native XML parsing only works with the most simple XML documents. It will most certainly fail if:

  • the text data is specified as a CDATA section
  • the document uses XML namespaces
  • the name element is not unique in the document
  • the content of name is not only character data
  • the text data of name contains escaped characters

XML is much too complex for string operations. You can use the snippet of code below, which is the equivalent of the code above with JDOM:

SAXBuilder builder = new SAXBuilder(false);Document doc = StringReader(xml));String name = doc.getRootElement().getChild(???name???).getText();


Share the Post: