Есть такой xml-файл такой структуры:
<?xml version="1.0" encoding="windows-1251"?>
<FileIndex>
<Name>lol.xml</Name>
<Size>0</Size>
<Path>E:/test/build-untitled-Desktop_Qt_5_4_1_MinGW_32bit-Release/lol.xml</Path>
<Created>Сб мар 14 21:55:37 2015</Created>
<Name>Makefile</Name>
<Size>20399</Size>
<Path>E:/test/build-untitled-Desktop_Qt_5_4_1_MinGW_32bit-Release/Makefile</Path>
<Created>Чт мар 12 19:00:45 2015</Created>
</FileIndex>
Есть имя файла. Если такой файл есть в списке, то нужно вывести путь к нему.
То бишь если встречается тег Name, то нужно заглянуть в него и сверить текст с имеющимся. Если текст совпал, перейти к ближайшему тегу Path, вытащить путь себе в переменную и выйти из цикла.
Начал я с меньшего и просто пытаюсь вывести имена всех файлов:
while(!xmlReader.atEnd())
{
QXmlStreamReader::TokenType token = xmlReader.readNext();
if(token == QXmlStreamReader::StartElement) {
if(xmlReader.name() == "Name") {
xmlReader.readNext();
ui->textBrowser->setText(xmlReader.text().toString());
}
}
}
Но в текстовое поле попадет имя только одного файла(последнего), а должны все. Что я делаю не так?