В настоящее время я работаю над программой, которая берет значение «типа данных», выбранного из поля со списком (через .getSelectedIndex()), а затем сверлит вниз «первую запись» и возвращает его как Строковый массив.NodeList не заполняется
Комбинированный ящик заполняется одним и тем же файлом XML, и я кодирую на Java с помощью парсера DOM.
XML фрагмент кода:
<?xml version="1.0" encoding="UTF-8"?>
<dealershipParsers>
<Parser id="ADPParser2">
<data type="Sales" />
<first record = "DEAL-NO"/>
<data type="Service" />
<first record ="RO"/>
<data type="Email" />
<first record ="CONTROL"/>
</Parser>
код Java настоящее время я использую, чтобы попытаться получить и вернуть «первый рекорд»:
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = factory.newDocumentBuilder();
Document document = docBuilder.parse(fileName);
//Searches all text
document.getDocumentElement().normalize();
//Gets elements from xml
Element elementArray = document.getDocumentElement();
NodeList listResources = elementArray.getElementsByTagName("Parser");
Element elemChild = (Element) listResources.item(item);
NodeList dataChildren = elemChild.getElementsByTagName("data");
Element elemFirst = (Element) dataChildren.item(item);
NodeList firstChildren = elemFirst.getElementsByTagName("first");
int tam = firstChildren.getLength();
String[] vecResources = new String[tam];
for (int i = 0; i < tam; i++)
{
Element elem = (Element) firstChildren.item(0);
vecResources[i] = elem.getAttribute("record"); // change to type
}
//returns an array with all the types of data
return vecResources;
мне удалось определить мою проблему будучи при переходе где-то между «dataChildren», «elemFirst» и «firstChildren». «dataChildren» имеет счет, но когда я делаю отладку в netbeans, это показывает, что «tam» равен 0, как «firstChildren».
Почему он не может передать значение от одного нодлиста к другому? Что мне не хватает?
Любые советы будут оценены.
Ох. Мои. Не могу поверить, что я пропустил это! Я смотрел на эту глупую вещь в течение недели, пытаясь понять это! Да, конечно! Ах спасибо, спасибо! Вот так! Я пошел с первым предложением о том, чтобы моя структура XML была иерархической. –
@senex_subconscious Добро пожаловать. Возможно, вы захотите попросить о помощи немного раньше в следующий раз, не нужно зацикливаться на ней целую неделю. :-П –