Автор Тема: Копиране на папка с Qt4  (Прочетена 1269 пъти)

LinuxFanUNIX

  • Напреднали
  • *****
  • Публикации: 408
  • Distribution: Slackware 12.2
  • Window Manager: KDE 3.5.10
    • Профил
Копиране на папка с Qt4
« -: Jun 05, 2010, 17:48 »
Добър вечер.

Налага ми се да направя функция в едно мое приложение което да копира папка в друга папка, обаче нещо не мога да намеря информация как да стане това... Смятам че с QDir() трябва да стане, но четейки документацията не намирам начин да стане. Имайте впредвид че тази папка, вътре има и други папки, така че възможността да създам нова папка и с QFile::copy() да изкопирам файловете - отпада.

Код
GeSHi (C++):
  1. void MainWindow::copyDir() {
  2.    QDir dir("/root/.xba-folder");
  3.    // и тук искам да допълня кода с нещо то рода на copy("/root/.xba-folder", "/root/.xba-tmp-backup")
  4. }

Надявам се, сте ме разбрали. Та има ли възможност да стане това което желая? :)
Благодаря Ви предварително!
Активен

task_struct

  • Напреднали
  • *****
  • Публикации: 576
  • Distribution: Kubuntu 14.04
  • Window Manager: KDE 4.13
    • Профил
Re: Копиране на папка с Qt4
« Отговор #1 -: Jun 05, 2010, 19:00 »
Първи линк в Google при търсене на "coping directories with qt" - http://lists.trolltech.com/qt-interest/2003-05/thread01274-0.html


Четвърти линк пак там - http://stackoverflow.com/questions/2536524/copy-directory-using-qt

Има поне 2-3 примера как може да се направи. Плюс това винаги може да изпозлваш KJob от kdelibs или да му хвърлиш 1 поглед на кода и да си направиш твоя имплементация :)

Активен

"Minds are like parachutes. They only function when they are open." - James Dewar

irc.freenode.net  / #linux-bg

LinuxFanUNIX

  • Напреднали
  • *****
  • Публикации: 408
  • Distribution: Slackware 12.2
  • Window Manager: KDE 3.5.10
    • Профил
Re: Копиране на папка с Qt4
« Отговор #2 -: Jun 05, 2010, 22:00 »
Така, опитах това от втория пример, обаче се получава недоразумение...

Аз трябва да извикам функцията recurseAddDir(QDir d, QStringList & list), обаче не мога да разбера от къде трябва да дойде това QStringList, при положение че аз имам само два QString-а: един с входяща папка, друг с изходяща папка

Ако имаш време и възможност - Помогни...

Благодаря предварително!
Активен

task_struct

  • Напреднали
  • *****
  • Публикации: 576
  • Distribution: Kubuntu 14.04
  • Window Manager: KDE 4.13
    • Профил
Re: Копиране на папка с Qt4
« Отговор #3 -: Jun 05, 2010, 22:26 »
В началото recurseAddDir получва директорията, която искаш да копираш и празен QStringList, където ще се запазят пълните имена на файловете за копиране. След като завърши изпълнението на функцията ще имаш QStringList със всички файлове, после просто пускаш един цикъл през него и копираш със QFile::copy(). Разгледай промера, който е даден :)  [_]3
Активен

"Minds are like parachutes. They only function when they are open." - James Dewar

irc.freenode.net  / #linux-bg