Russian Qt Forum

Qt => Общие вопросы => Тема начата: sharkerr от Май 21, 2009, 07:05



Название: Синхронизация файлов
Отправлено: sharkerr от Май 21, 2009, 07:05
Пишу программу синхронизация файлов, на форме два treeView в них загоняю файлы с помощью
Код:
QDirModel* dirModel = new QDirModel;
QModelIndex index_m;
index_m = dirModel->index(ui->lineEdit->text());
ui->treeView->setModel(dirModel);
ui->treeView->setRootIndex(index_m);
Вопрос как достать теперь от туда какие файлы там?
И посоветуйте, может как нибудь по лучше можно реализовать синхронизацию файлов или примерчик может у кого есть?


Название: Re: Синхронизация файлов
Отправлено: Admin от Май 21, 2009, 08:57
1) смотрите документацию по QDirModel

Цитировать
QDirModel can be accessed using the standard interface provided by QAbstractItemModel, but it also provides some convenience functions that are specific to a directory model. The fileInfo() and isDir() functions provide information about the underlying files and directories related to items in the model.

2) про синхронизацию примеров не будет, очень много зависит от самих файлов - попробуйте сами придумать словесное описание алгоритма синхронизации, как вы его видите - а мы поможем.


Название: Re: Синхронизация файлов
Отправлено: sharkerr от Май 21, 2009, 09:47
По идее сначало необходимо вывести файлы в treeview и потом по одному брать и проверять сначало по имени есть ли такой файл в другом treeView если нет то скопировать если есть и он по дате старее то скопироват заменив. По идее можно все данные с treeview сохранить в QStringList, а потом просто проверять соотвествия.
з.ы. по моему так


Название: Re: Синхронизация файлов
Отправлено: niXman от Май 21, 2009, 10:28
Не понятно для чего ваще TreeView?
Есть QFileInfoList и QDirIterator, вот и все)