[C++] Kopiowanie całego folderu z wyjątkami


(kijek) #1

Jak kopiować foldery w C++ tak, aby kilka plików nie zostało skopiowanych, np. chcę, aby folder J:\cośtam\ został skopiowany z wyjątkiem np. plików wyjątek1.txt, wyjątek2.txt do C:\nudy\?


(Sawyer47) #2

Zrobić listę plików, usunąć te które nie mają być kopiowane, a resztę skopiować. Tyle, że do tego trzeba by użyć jakiejś zewnętrznej biblioteki.


(kijek) #3

tylko jakiej?


(Sawyer47) #4

Na przykład Boost.Filesystem: http://www.boost.org/doc/libs/1_39_0/li ... /index.htm

Choć to tylko propozycja.


(Fiołek) #5

Ja, jako iż nie przepadam za boostem(zbyt duża kobyła dla mnie), polecam użyć natywnych dla danego środowiska bibliotek. Z tego co widzę to podałeś ścieżki Windows, a więc użyj WinAPI(funkcje: CopyFile, FindFirstFileEx, FindNextFile). Reszta tak jak podał nr47.


(kijek) #6

W WinAPI, to ja tylko umiem okienko zrobić< z napisem, przyciskami i ikonką o bok, więc to raczej nie jest dobry pomysł (zresztą o wiele wygodniej programowało mi się w Qt). Właśnie... może w Qt jest taka możliwość?


(Sawyer47) #7

Da się, wystarczy poszukać: http://doc.qtsoftware.com/4.5/qdir.html

Chociaż QtCore to raczej większa kobyła niż samo Boost.Filesystem.


(kijek) #8

To już w tym temacie zadam jeszcze jedno pytanie (chodź możliwe, że będzie ich jeszcze więcej). Jeżeli bym pisał w Qt, to najprawdopodobniej na Linuksie (w Windowsie na żadnym z dysków nie mam wystarczająco dużo wolnej przestrzeni na zainstalowanie Qt), więc czy jest możliwość pod Linuskiem skompilować program do formatu .exe (bo aplikacja głównie przeznaczona byłaby na Windowsa)?


(Sawyer47) #9

Ogólnie można przez mingw32, ale czy z Qt to zadziała to nie wiem, używałem tylko z biblioteką standardową.


(kijek) #10

To jak ściągnę już Kubuntu 9.04 i zainstaluję je, to sprawdzę, a poza tym, to dzięki :slight_smile: