MFC 中如何实现复制文件并生成副本
时间: 2024-02-23 16:01:20 浏览: 123
在 MFC 中,可以使用 CFile 类来复制文件并生成副本。具体实现可以参考以下代码:
```cpp
// 源文件路径
CString strSrcFilePath = _T("C:\\test\\source.txt");
// 目标文件路径
CString strDestFilePath = _T("C:\\test\\copy.txt");
// 创建 CFile 对象,打开源文件
CFile srcFile;
if (!srcFile.Open(strSrcFilePath, CFile::modeRead | CFile::shareDenyNone))
{
return;
}
// 创建 CFile 对象,创建或打开目标文件
CFile destFile;
if (!destFile.Open(strDestFilePath, CFile::modeCreate | CFile::modeWrite | CFile::shareDenyNone))
{
srcFile.Close();
return;
}
// 获取源文件大小,并分配相应大小的内存
ULONGLONG dwFileSize = srcFile.GetLength();
BYTE* pBuffer = new BYTE[dwFileSize];
// 读取源文件数据到内存中
srcFile.Read(pBuffer, dwFileSize);
// 将内存中的数据写入目标文件中
destFile.Write(pBuffer, dwFileSize);
// 关闭文件,释放内存
srcFile.Close();
destFile.Close();
delete[] pBuffer;
```
其中,strSrcFilePath 表示源文件路径,strDestFilePath 表示目标文件路径。在实际使用中,可以根据需要修改文件路径和打开方式等参数。