Вопрос относительно разбора XML с использованием SAX в JAVA - PullRequest
1 голос
/ 27 июня 2011

Я пытаюсь разобрать XML-документ на Java (впервые пытаюсь это сделать), и я нашел в Google несколько статей, в которых приведены примеры, но я действительно не понимаю в них часть кода, поэтомуМне было интересно, если кто-то может объяснить мне несколько вещей.Основной пример, на который я смотрел, пришел отсюда: http://www.java -tips.org / java-se-tips / org.xml.sax / parsing-xml-with-a-simple-sax-document-handler-2.html .

Мои основные вопросы в основном относятся ко второй половине кода, а именно к части ...

 // we enter to element 'qName':
        public void startElement(String uri, String localName, 
                String qName, Attributes attrs) throws SAXException {

            if (qName.equals("purchase-order")) {
            } else if (qName.equals("date")) {
            } /* if (...)
                        } */ else {
                throw new IllegalArgumentException("Element '" + 
                        qName + "' is not allowed here");
                        }
        }

        // we leave element 'qName' without any actions:
        public void endElement(String uri, String localName, String qName)
        throws SAXException {
            // do nothing;
        }

... может кто-нибудь объяснить мнечто такое "атрибуты String uri, String localName, String qName и Attributes? Я предполагаю, что они не являются специфичными для кода, как я видел их в нескольких примерах. Также (предполагая), что это какие-то корневые элементы в XMLМожет ли кто-нибудь предоставить какое-то руководство относительно того, как я мог бы использовать их для анализа файла «document.xml.rels», расположенного в каталоге .docx, таким образом, чтобы он мог читать и принимать только файлы изображений (не заголовок, настройкии т. д.) и связанные с ними идентификаторы отношений (ниже приведен краткий документ, на который я ссылаюсь) ...

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?> 
- <Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
      <Relationship Id="rId8" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/footer" Target="footer1.xml" /> 
      <Relationship Id="rId13" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme" Target="theme/theme1.xml" /> 
      <Relationship Id="rId3" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/settings" Target="settings.xml" /> 
      <Relationship Id="rId7" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/header" Target="header1.xml" /> 
      <Relationship Id="rId12" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/fontTable" Target="fontTable.xml" /> 
      <Relationship Id="rId2" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles" Target="styles.xml" /> 
      <Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/numbering" Target="numbering.xml" /> 
      <Relationship Id="rId6" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/endnotes" Target="endnotes.xml" /> 
      <Relationship Id="rId11" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/image" Target="media/image3.png" /> 
      <Relationship Id="rId5" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/footnotes" Target="footnotes.xml" /> 
      <Relationship Id="rId10" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/image" Target="media/image2.jpeg" /> 
      <Relationship Id="rId4" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/webSettings" Target="webSettings.xml" /> 
      <Relationship Id="rId9" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/image" Target="media/image1.jpeg" /> 
</Relationships>

Спасибо за любую помощь заранее!

Ответы [ 2 ]

1 голос
/ 07 июня 2012
URI :   Namespace URI
LOCAL NAME : the local name (without prefix)
QName : the qualified XML name (with prefix) 
1 голос
/ 27 июня 2011

Посмотрите на Javadoc SAX ContentHandler.startElement(..)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...