Cum să copiați programabil


Versiune text: 1.0.1

Dacă failIfExists este setat la TRUE, atunci dacă fișierul cu numele toName există deja, funcția va eșua. În caz contrar (failIfExists = FALSE) fișierul toName existent va fi suprascris.







Mutarea și redenumirea unui fișier din punctul de vedere al sistemului de fișiere nu diferă, deoarece în primul și cel de-al doilea caz numele complet al fișierului este schimbat. Puteți efectua această operație cu funcția MoveFile ().

Funcția MoveFile are o serie de limitări. În primul rând, nu vă permite să gestionați situația atunci când există deja un fișier numit toName. A doua restricție se datorează faptului că funcția MoveFile () este capabilă să deplaseze nu numai fișiere, ci și directoare. Deci, mutarea directoarelor trebuie să aibă loc într-un singur volum.

Pentru a depăși aceste limitări, există o funcție MoveFileEx ().

Ștergerea fișierului poate fi efectuată de funcția DeleteFile ().







Toate aceste funcții în operațiuni lungi revin la program numai după ce operația cu fișierul este finalizată. Uneori este inconfortabil. Apoi puteți ajuta funcția SHFileOperation, care vă permite să vizualizați procesul de executare a unei operații de fișier.

Parametrii operării fișierului sunt setați prin setarea valorilor structurii SHFILEOPSTRUCT, indicatorul la care este trecută funcția.

În plus, funcția SHFileOperation () vă permite să ștergeți un fișier din coșul de gunoi. Pentru a face acest lucru, trebuie să adăugați stegulețul FOF_ALLOWUNDO la setul de pavilion și asigurați-vă că specificați calea completă la fișier în câmpul pFrom.

Acum, după revizuirea funcțiilor sistemului care efectuează operații cu fișiere, se poate reaminti că programatorii din limbile C / C ++ au uneori mai multe șanse de a folosi funcțiile bibliotecii runtime (așa-numita "runtime").

Ștergerea unui fișier utilizând biblioteca runtime este posibilă utilizând funcția remove () (sau _unlink ()).

Mutarea / redenumirea unui fișier într-o bibliotecă de execuție se realizează prin intermediul funcției rename ():

Funcția rename () are limitări - fișierul szToName nu ar trebui să existe. Prin urmare, mai întâi trebuie să aflați dacă există sau nu un astfel de fișier și, dacă există, să îl eliminați în prealabil.







Articole similare

Trimiteți-le prietenilor: