C++ CopyFile,MoveFile用法案例詳解
1.含義
CopyFile(A, B, FALSE);表示將文件A拷貝到B,如果B已經(jīng)存在則覆蓋(第三參數(shù)為TRUE時表示不覆蓋)
MoveFile(A, B);表示將文件A移動到B
2.函數(shù)原型
CopyFile:

MoveFile:

由函數(shù)原型可以看出,這兩個函數(shù)的前兩個輸入?yún)?shù)都為LRCWSTR類型,如果我們定義的是char*,記得轉(zhuǎn)換成LRCWSTR,否則會報錯;
另外,這兩個函數(shù)都返回一個bool型變量,表示執(zhí)行成功與否,當(dāng)目標(biāo)位置路徑不存在時,會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:如果目標(biāo)位置已經(jīng)存在同名文件,就覆蓋,return 1
//TRUE:如果目標(biāo)位置已經(jīng)存在同名文件,則補(bǔ)拷貝,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;
}
到此這篇關(guān)于C++ CopyFile,MoveFile用法案例詳解的文章就介紹到這了,更多相關(guān)C++ CopyFile,MoveFile用法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vector與map的erase()函數(shù)詳細(xì)解析
vector和map都不能將it++寫在for循環(huán)中,而在循環(huán)體內(nèi)erase(it)2013-09-09
C++學(xué)習(xí)小結(jié)之二進(jìn)制轉(zhuǎn)換
這篇文章主要介紹了C++學(xué)習(xí)小結(jié)之二進(jìn)制轉(zhuǎn)換的相關(guān)資料,需要的朋友可以參考下2015-07-07
Qt QStandardItemModel用法小結(jié)
QStandardItemModel可用作標(biāo)準(zhǔn)Qt數(shù)據(jù)類型的存儲庫,本文主要介紹了Qt QStandardItemModel用法小結(jié),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-12-12

