QFileSystemWatcher :: files () не возвращает список файлов

я использую QFileSystemWatcher для просмотра изменений в каталоге, который я установил в watcher->addPath("myPath") метод.

Когда я звоню watcher->directories() я вижу myPath,

Но когда я звоню watcher->files() Я ничего не вижу. Я думал, что увижу файлы в каталоге, когда я использую этот метод.

Что я должен сделать, чтобы увидеть файлы в каталоге?

0

Решение

QFileSystemWatcher предназначен для просмотра изменений в файловой системе.

Для получения списка файлов в каталоге используйте QDir :: entryList.

Пример:

QString files = QDir("c:\\").entryList(QDir::NoDotAndDotDot);

Если вам нужно наблюдать за изменениями в каталоге (файлы добавлены / переименованы или удалены события), вы используете addPath с каталогом и слушать directoryChanged сигнал.
Если вам нужно посмотреть изменение содержимого файла, который вы используете addPath с полным путем к файлу и слушать fileChanged сигнал.

Соответственно directories возвращает список каталогов, которые вы добавили, и files возвращает список файлов, которые вы добавили.

2

Другие решения


По вопросам рекламы [email protected]