Я анализирую XML-файл в формате:
** ПРИМЕЧАНИЕ. Это очень упрощенная версия XML. Всего 11 отделов, а 87 отделов всего
<division>
<name> Sciences </name>
<departments>
<department>
<name> Computer Science </name>
</department>
<department>
<name> Biology </name>
</department>
<department>
<name> Chemistry </name>
</department>
</department>
</division>
То, что я надеюсь сделать, это отобразить эту информацию в UITableView с названиями отделов в качестве разделов и названиями отделов в каждом соответствующем разделе.
У меня есть NSDictionary под названием DivisionDict, который я хочу хранить NSArrays для каждого подразделения; содержащий отделы. У меня также есть NSMutableArray с именем DepartmentArray, который содержит каждый из отделов. Итак, по сути, я хочу, чтобы DivisionDict был заполнен DepartmentArrays.
Вот мой код для разбора XML, который отлично работает, у меня просто проблемы с хранением отдельных массивов в словаре. Когда он проходит через анализ и я пытаюсь распечатать элементы в массиве с ключом «Науки», он печатает отделы для каждого подразделения, а не только для наук.
if(node_divisions)
{
node_division = [TBXML childElementNamed:@"division" parentElement:node_divisions];
while (node_division)
{
node_divisionName = [TBXML childElementNamed:@"name" parentElement:node_division];];
node_departments = [TBXML childElementNamed:@"departments" parentElement:node_division];
node_department = [TBXML childElementNamed:@"department" parentElement:node_departments];
divisionName = [TBXML textForElement:node_divisionName];
while(node_department)
{
node_departmentName = [TBXML childElementNamed:@"name" parentElement:node_department];
departmentName = [TBXML textForElement:node_departmentName];
//add the department name to the array
[departmentArray addObject:departmentName];
node_department = node_department->nextSibling;
}
//add the departmentArray to the dictionary, using the division name as the key
[divisionDict setObject:departmentArray forKey:divisionName];;
node_division = node_division->nextSibling;
}
}
Любая помощь очень ценится !!! Я знаю, что-то простое, я, наверное, скучаю, но я смотрю на это слишком много часов и просто не вижу этого. Если вам нужна какая-либо другая информация, просто дайте мне знать, я попытался объяснить все подробно.
Кроме того, вот картинка, которая, надеюсь, помогает показать то, что я пытаюсь описать:
http://i.stack.imgur.com/a9nSb.png