C++ CopyFile,MoveFile用法案例詳解
1.含義
CopyFile(A, B, FALSE);表示將文件A拷貝到B,如果B已經存在則覆蓋(第三參數為TRUE時表示不覆蓋)
MoveFile(A, B);表示將文件A移動到B
2.函數原型
CopyFile:
MoveFile:
由函數原型可以看出,這兩個函數的前兩個輸入參數都為LRCWSTR類型,如果我們定義的是char*,記得轉換成LRCWSTR,否則會報錯;
另外,這兩個函數都返回一個bool型變量,表示執行成功與否,當目標位置路徑不存在時,會return 0
3.Demo
CopyFile:
#include <fstream> #include <windows.h> int main() { char *fn = "test.txt"; std::ofstream out(fn); if (!out.is_open()) return 0; out.close(); WCHAR buf[256]; memset(buf, 0, sizeof(buf)); MultiByteToWideChar(CP_ACP, 0, fn, strlen(fn) + 1, buf, sizeof(buf) / sizeof(buf[0])); CopyFile(buf, L"../file/output.txt", FALSE);//FALSE:如果目標位置已經存在同名文件,就覆蓋,return 1 //TRUE:如果目標位置已經存在同名文件,則補拷貝,return 0 //後者路徑若不錯在,return 0 system("pause"); return 1; }
MoveFile:
#include <fstream> #include <windows.h> int main() { char *fn = "test.txt"; std::ofstream out(fn); if (!out.is_open()) return 0; out.close(); WCHAR buf[256]; memset(buf, 0, sizeof(buf)); MultiByteToWideChar(CP_ACP, 0, fn, strlen(fn) + 1, buf, sizeof(buf) / sizeof(buf[0])); MoveFile(buf, L"../file/output.txt");//FALSE:將前者移動到後者中(後者路徑若不錯在,return 0) system("pause"); return 1; }
到此這篇關於C++ CopyFile,MoveFile用法案例詳解的文章就介紹到這瞭,更多相關C++ CopyFile,MoveFile用法內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!