[英]Parsing xml with StAX: not getting a large content tag
我正在使用StAX解析我的xml文件,問題是當標簽內容很大時,StAX無法提供全部內容。 這是我的xml文檔的一部分,有效負載標簽的內容要大得多,無法在SOF中全部打印出來:
<payload>{\"id\": \"ENTITY24\",\"attr1\": {\"type\": \"sensor\",\"type\": \"type1\",\"value\": \"val1\",\"metadata\": {}}}</payload>
這是我的代碼解析的一部分:
if(startElement.getName().getLocalPart().equals("payload")){
xmlEvent = xmlEventReader.nextEvent();
if(xmlEvent.isCharacters()){
setPayload(xmlEvent.asCharacters().getData());
}
}
知道為什么StAX無法提供整個標簽內容嗎? 謝謝和最好的問候。
您應該在其他事件之間並置所有isCharacters
事件,或者設置IS_COALESCING屬性。
就像使用SAX一樣,STAX可能會為您提供一個字符序列作為多個事件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.