Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Переименование файлов
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt Ввод/Вывод, Сеть. Межпроцессное взаимодействие
xu-user
Доброго времени суток.
Программа перебирает файла в указанной папке и переименовывает их неким образом.
Присваиваю QDir выбранную папку:

CurPath = QFileDialog::getExistingDirectory(0, "Select a Directory");
QDir CurDir = CurPath;


Затем выбираю файлы и передаю их в функцию:
QStringList listFiles = CurDir.entryList(QStringList()<<"*", QDir::Files);
foreach (QString file, listFiles)
        RenameFile(CurDir.absoluteFilePath(file));


В функции файл переименовывается так:
QFile file(AbsoluteFilePath);
        if (file.rename(NewFilename)){
            ui->teResult->append(OldFilename+" -> "+NewFilename);
            file.close();
        }


Проблема в том, что если выбрал папку, отличную от папки где лежит прога, то файлы из той папки исчезают и оказываются в папке с программой, уже переименованные. В чём у меня загвоздка? Надо чтоб файлы оставались в своей папке.
ilyabvt
А что содержит NewFilename? Только имя файла без пути?
xu-user
Цитата(ilyabvt @ 21.8.2013, 19:51) *
А что содержит NewFilename? Только имя файла без пути?

Да, только имя.
ilyabvt
Попробуйте указать полный путь.
xu-user
Цитата(ilyabvt @ 21.8.2013, 20:42) *
Попробуйте указать полный путь.

Помогло, однако. Немножко странно это, ну да ладно ) Спасибо :)
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.