2016-07-28 12 views
-1

私はxmlファイルを解析するためにStAXを使用していますが、タグのコンテンツが大きい場合、StAXはコンテンツ全体を渡すことができません。StAXでxmlを解析する:大きなコンテンツタグを取得しない

:ここ
<payload>{\"id\": \"ENTITY24\",\"attr1\": {\"type\": \"sensor\",\"type\": \"type1\",\"value\": \"val1\",\"metadata\": {}}}</payload> 

がそれを解析する私のコードの一部です:ここで は、ペイロードタグのコンテンツは、SOFでそれをすべて印刷することができないはるかに大きいそうです、私のXML文書の一部であり、
if(startElement.getName().getLocalPart().equals("payload")){ 
    xmlEvent = xmlEventReader.nextEvent(); 
    if(xmlEvent.isCharacters()){ 
     setPayload(xmlEvent.asCharacters().getData());       
    } 
} 

なぜStAXが全タグコンテンツを提供できないのでしょうか? ありがとうございます。

答えて

2

他のイベント間ですべてのisCharactersイベントを連結するか、IS_COALESCINGプロパティを設定する必要があります。

SAXの場合と同じように、STAXは複数のイベントとして1つの文字の実行を提供することがあります。

関連する問題