XmlStreamReader недопустимое состояние исключение
Я пытаюсь проанализировать XML-файл, содержащий строки, которые выглядят так, как показано ниже:
<z:row TapID="4501" GesprekID="1358900" Onderzoek="123456789" NummerBeller="316987654321" TenaamstellingBeller="Pieter de Klerck, geboren 28-10-1980" NummerGebelde="316123456789" TenaamstellingGebelde="de Klerck B.V" Aard="Spraak" IMSIGebelde="098765432112345" Sessienummer="46" Wanneer="2014-11-09T10:49:25" Duur="39" ProductID="1000134498162" PaalGebeldeStartUniek="204-16-60076-33924" PaalGebeldeEindUniek="204-16-60076-33924"/>
Я использую следующий код для анализа записей "строки":
XMLInputFactory factory = XMLInputFactory.newInstance();
XMLStreamReader reader = factory.createXMLStreamReader(file);
while (reader.hasNext()) {
int event = reader.next();
switch (event) {
case XMLStreamConstants.START_ELEMENT:
if ("row".equals(reader.getLocalName())) {
for(int x = 0; x < reader.getAttributeCount(); x++){
System.out.println(reader.getAttributeName(x) +": " + reader.getAttributeValue(x);)
}
}
}
}
Но я продолжаю получать ошибку:
java.lang.IllegalStateException: Current state is not among the states START_ELEMENT , ATTRIBUTEvalid for getAttributeName()
Может кто-нибудь объяснить мне, почему можно получить AttributeValue, но я продолжаю получать ошибки при запросе AttributeName?