當前位置:首頁 » 文件管理 » mfc復制文件夾

mfc復制文件夾

發布時間: 2022-08-18 00:13:26

A. 怎麼用C++ MFC 復制文件

你是不是說的復制文件?是的話方法多的很。
比如要復制C:\cmd.exe至D:\dir\2下,並重命名為cmd_new.exe,方法如下:
system(" c:\\cmd.exe d:\\dir\\2\\cmd_new.exe");
就相當於是在執行MS-DOS命令。這是在控制台下使用的,不過我想你應該夠用了。
在MFC下可以用CopyFile()函數,定義如下:
BOOL CopyFile(
LPCTSTR lpExistingFileName,
// pointer to name of an existing file
LPCTSTR lpNewFileName, // pointer to filename to to
BOOL bFailIfExists // flag for operation if file exists
);

B. mfc 如何復制文件到文件夾

主要有兩個難點:
1、如何選擇文件;
2、選擇好文件之後,如果復制;

1st、關於文件選擇,可參考下面這段代碼:
CString CDcPackerDlg::BootOpenDialog() //返回選擇的文件名稱
{
CString strFile = _T("");

CFileDialog dlgFile(TRUE, NULL, NULL, OFN_HIDEREADONLY, _T("Describe Files (*.cfg)|*.cfg|All Files (*.*)|*.*||"), NULL);

if (dlgFile.DoModal())
{
strFile = dlgFile.GetPathName();
}

return strFile;
}

//載入文件按鈕
void CDcPackerDlg::OnBnClickedSelectdec()
{
// TODO: Add your control notification handler code here
m_strDescPath = ""; //類的成員變數

//"打開文件"對話框,選擇文件,返回其路徑
m_strDescPath = BootOpenDialog();
}

2nd、文件復制:
2.1 獲得程序目錄
CString strPath = "", strDir = "";
char filepath[MAX_PATH];
GetMoleFileName(NULL, filepath, MAX_PATH);
strDir.Format("%s", filepath);
strPath = strDir.Left(strDir.ReverseFind('\\'));

2.2 復制文件
在MFC下可以用CopyFile()函數,定義如下:
BOOL CopyFile(
LPCTSTR lpExistingFileName, //原文件地址,包括文件名
LPCTSTR lpNewFileName, ////目的文件地址,包括文件名
BOOL bFailIfExists //如果目的文件存在的操作
);

3rd、自己把上面給的代碼組裝一下,就可以滿足你的要求了。
打字不易,如滿意,望採納。

C. MFC怎麼實現將源文件復制到要保存的目標路徑

你好!
先使用目標路徑創建文件,再打開源文件,do{讀源文件,寫目標文件}while(!endoffile(源文件))
僅代表個人觀點,不喜勿噴,謝謝。

D. MFC 文件選擇 復制到固定文件夾

	CFileDialogfld(TRUE,NULL,NULL,OFN_READONLY,"所有文件|*.*||",this);
if(IDOK==fld.DoModal())
{
CStringfpath=fld.GetPathName();
CStringtpath=_T("D:\");//固定文件夾
tpath+=fld.GetFileName();
::CopyFile(fpath,tpath,TRUE);
}

E. MFC中Copyfile的問題。

1.不信你可以看看,系統里的所有文件夾都是只讀屬性,這個沒關系;
2.CopyFile只能拷貝文件,不能拷貝文件夾;
3.若要拷貝文件夾,可參考如下方法:
BOOL CCheckFileDlg::CopyDir(CString strSrcPath, CString strDstPath)
{ // 創建目標文件夾

CreateDirectory(strDstPath,NULL);

CFileFind finder;

// 打開指定的文件夾進行搜索

BOOL bWorking = finder.FindFile(strSrcPath + "\\" + "*.*");

while(bWorking)

{

// 從當前目錄搜索文件

bWorking = finder.FindNextFile();

CString strFileName = finder.GetFileName();

CString strSrc = strSrcPath + "\\" + strFileName;

CString strDst = strDstPath + "\\" + strFileName;

// 判斷搜索到的是不是"."和".."目錄

if(!finder.IsDots())

{

// 判斷搜索到的目錄是否是文件夾

if(finder.IsDirectory())

{

// 如果是文件夾的話,進行遞歸

if(!CopyDir(strSrc, strDst))

return false;

}

else

{

// 如果是文件,進行復制

if(!CopyFile(strSrc, strDst, FALSE))

return false;

}

}

}

return true;

}

F. 怎麼將mfc71.dll文件復制到C:\WINDOWS\system32

右鍵你要復制的文件。在其中選擇復制。然後把窗口轉到
C盤
WINDOWS文件夾下的
SYSTEM32
夾下後再粘貼就OK了。有的DLL庫不需要注冊。只要拷進去就能用。

G. MFC CopyFile()復制文件時路徑問題

你的寫法是不是有問題啊?試試仿照我這個寫呢:

CFileDialog dlg(TRUE);// TRUE為open對話框,FALSE 為 Save As 對換框
if(dlg.DoModal()==IDOK)
{
CString str=dlg.GetPathName();
MessageBox(L"選擇保存的路徑是:" + str);
}

這是令一個方法,也拿去試試。
我直接把自己的代碼貼過來了,沒有怎麼改,相信你能看得懂,知道哪些有用,哪些沒用,偷個小懶,嘿嘿!
BROWSEINFO bBinfo;
memset(&bBinfo,0,sizeof(BROWSEINFO));// 定義結構並初始化
TCHAR strTmp[255];
LPITEMIDLIST lpDlist;
bBinfo.hwndOwner = m_hWnd;// 設置對話框所有者句柄
bBinfo.lpszTitle = L"請選擇拷貝的源路徑:";
bBinfo.ulFlags = BIF_RETURNONLYFSDIRS;// 設置標志只允許選擇目錄
// 用來保存返回信息的IDList,使用SHGetPathFromIDList函數轉換為字元串
lpDlist = SHBrowseForFolder(&bBinfo);// 顯示選擇對話框
if (lpDlist != NULL)
{
SHGetPathFromIDList(lpDlist,strTmp);// 把項目標識列表轉化成目錄
TRACE(strTmp);
m_strFromPath = strTmp;
UpdateData(FALSE);
}

H. MFC ListCtrl如何復制文件到另一個文件夾

List Ctrl是一個多行控制項,你是希望將裡面的內容復制到另外的文件夾中?

如果是這樣的話,首先你要通過GetItemText將每行文本取出來保存在字元串中,然後只需要利用文件操作介面將字元串寫在文件裡面即可;

如果你是希望點擊裡面某項實現復制某個文件到另外的文件夾中,只需要在Click函數中打開文件選擇窗口,將獲取的文件調用文件保存介面保存在另外的文件夾即可

I. 用mfc如何實現將一個文件拷貝到另一個文件夾中例如:C:\WINDOWS\a.txt中的a.txt文件拷貝到D:\Program

很多方法簡單的就是用CopyFile(原來的路徑,要的新的路徑);你可以查看對應的MSDN如CopyFile(「c:\\windows\\a.txt」,"d:/program/a.txt")

J. MFC文件復制問題

CopyFile的參數是:
CopyFile(已經存在的源文件路徑, 目的文件路徑, 當目的文件已經存在是否覆蓋);
第三個參數為TRUE時,當目的文件路徑已存在時(即已經有此文件),不覆蓋,函數返回錯誤(非0)
當第三參數為FALSE時,如果目的文件路徑已存在,則覆蓋此文件。
參考MSDN:
http://msdn.microsoft.com/en-us/library/windows/desktop/aa363851(v=vs.85).aspx

所以建議你:
1. 查一下 "E:\\圖片" 是否已經存在?(似乎你給了個目錄名),改成:"E:\\new.jpg" 看看是否解決。
2. 源文件是否存在?

熱點內容
ai壓縮腳本 發布:2024-03-28 23:41:10 瀏覽:987
危化品的存儲 發布:2024-03-28 23:02:09 瀏覽:608
qq重新設密碼怎麼設置 發布:2024-03-28 22:49:05 瀏覽:89
深圳航天信息稅盤伺服器地址 發布:2024-03-28 22:47:51 瀏覽:204
玩csol伺服器連接中斷怎麼辦 發布:2024-03-28 22:46:19 瀏覽:906
apk加密軟體 發布:2024-03-28 22:36:14 瀏覽:696
cpu不能直接訪問的存儲器 發布:2024-03-28 22:31:49 瀏覽:441
嘀嘀打車源碼 發布:2024-03-28 22:26:02 瀏覽:935
資料庫脆弱點 發布:2024-03-28 22:25:06 瀏覽:801
2021款es升級了哪些配置 發布:2024-03-28 21:26:44 瀏覽:384