Russian Qt Forum

Qt => Общие вопросы => Тема начата: juvf от Октябрь 02, 2010, 18:16



Название: Как программно переместить каталог?
Отправлено: juvf от Октябрь 02, 2010, 18:16
В теме вопрос. Нужно переместить каталог в др место
например: весь каталог с подкаталогами d:/myData/data, должен лечь сюда d:/temp. Нашел функцию BOOL WINAPI MoveFileEx(). Но это винапи, т.е. на *nix-ах непрокатит. Как это сделать с помощью Qt? Или как без Qt, но кроссплатформенно?


Название: Re: Как программно переместить каталог?
Отправлено: KADABRA от Октябрь 02, 2010, 18:38
http://doc.trolltech.com/4.7/qdir.html#rename


Название: Re: Как программно переместить каталог?
Отправлено: juvf от Октябрь 02, 2010, 20:19
ну я rename пробовал - false возвращяет. пример
Код:
bool isOk;
QString path = QDir::current().currentPath();
QDir ddd;
if(ddd.exists(path + "/Data/" + curTeremName))
{
isOk = ddd.rename(path + "/Data/" + curTeremName, path + "/deleted/" + curTeremName);
}


Название: Re: Как программно переместить каталог?
Отправлено: juvf от Октябрь 02, 2010, 21:17
нашел в чём ошибка. папки "deleted" не существует. нужно сначала проверить существует ли она, если нет то создать. Проблема решена.