Я хотел бы прочитать все CDATA, связанные с дочерним узлом, и сохранить их в Java ArrayList!Если бы вы могли предложить простой и быстрый способ, я был бы очень признателен!
Спасибо!
In хотел бы провести небольшую рутинную проверку txnid для конкретного значения и прочитать все связанныеЗапросы CDATA в различных элементах массива.
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<ZQueries txid="Group 1" version="1.0.0.0">
<ZQuery name="Some Name 1" savename="SomeFileName1.xml">
<![CDATA[
SELECT ...........
]]>
</ZQuery>
<ZQuery name="Some Name 2" savename="SomeFileName.xml">
<![CDATA[
SELECT .............
]]>
</ZQuery>
<ZQuery name="some name 3" savename="someFileName.xml">
<![CDATA[
SELECT ..............
]]>
</ZQuery>
</ZQueries>
<ZQueries txid="Group 2" version="1.0.0.0">
<ZQuery name="Some Name 1" savename="SomeFileName1.xml">
<![CDATA[
SELECT ...........
]]>
</ZQuery>
<ZQuery name="Some Name 2" savename="SomeFileName.xml">
<![CDATA[
SELECT .............
]]>
</ZQueries>
ЭТО ПРАВИЛЬНЫЙ ПОДХОД!СЛЕДУЮЩИЙ КОД СОЗДАЕТ ИСКЛЮЧЕНИЕ ПОКАЗАНО!КАК ВЫ ДУМАЕТЕ, ЧТО Я МОГУ ПОЛУЧИТЬ ЭТО!
SAXBuilder builder = new SAXBuilder();
Document doc = builder.build(in); //build a JDOM doc from an input stream
ArrayList<String> queries = new ArrayList<String>();
Element root = doc.getRootElement();
Iterator elemIter = root.getDescendants();
while (elemIter.hasNext()) {
Element tempElem = (Element) elemIter.next();
if (root.getChild("ZQueries").getAttributeValue("txnid").equals(tempTxnid)) {
String CDATA = tempElem.getChildText("ZQueries");
queries.add(CDATA);
}
}
Exception in thread "AWT-EventQueue-0" java.security.PrivilegedActionException:
java.security.PrivilegedActionException: org.jdom.input.JDOMParseException: Error on
line 1: Premature end of file.