c++(MFC)对文件的基本操作

c++ 基于MFC对文件的操作

首先基本的MFC的创建,创建后添加组件
直接使用工具栏拖拉;

简单的定义两个按钮

双击组件给按钮添加响应事件

  • 复制文件响应代码
void CMFCtest1Dlg::OnBnClickedButton1()
{
    // TODO: 在此添加控件通知处理程序代码
    BOOL bcopyfile = CopyFile(_T("D:\\1.txt"),_T("D:\\2.txt"),true);//true代表如果文件已存在则不能复制,如果为false可以覆盖复制;

    if (bcopyfile)
    {
        ::MessageBox(NULL, _T("成功"), _T("复制结果"), 0);

    }
    else {
        ::MessageBox(NULL, _T("失败"), _T("复制结果"), 0);
    }
}

MessageBox参数理解
function MessageBox(hWnd: HWND; Text, Caption: PChar; Type: Word: Integer);
hWnd:对话框父窗口句柄,对话框显示在Delphi窗体内,可使用窗体的Handle属性,否则可用0,使直接作为桌面窗口的子窗口。
Text:欲显示的信息字符串。
Caption:对话框标题字符串。
Type:对话框类型常量。

  • 删除文件
void CMFCtest1Dlg::OnBnClickedButton2()
{
    // TODO: 在此添加控件通知处理程序代码
    BOOL bdelfile = DeleteFile(_T("D:\\2.txt"));

    if (bdelfile) {
        ::MessageBox(NULL, _T("已删除"), _T("删除结果"), 0);
    }
    else {
        ::MessageBox(NULL, _T("删除失败"), _T("删除结果"), 0);
    }
}
  • 对文件夹递归删除
    删除文件夹是如果文件夹里有子文件夹,系统提供的的是无法删除的,需要递归去删;
void CMFCtest1Dlg::OnBnClickedButton4()
{
    // TODO: 在此添加控件通知处理程序代码
    MyDelDir(_T("D:\\测试c++文件夹"));
        BOOL bdeldir = RemoveDirectory(_T("D:\\测试c++文件夹"));
    if (bdeldir) {
        ::MessageBox(NULL, _T("已del"), _T("del文件夹"), 0);
    }
    else {
        ::MessageBox(NULL, _T("del失败"), _T("del文件夹"), 0);
    }
}
void CMFCtest1Dlg::MyDelDir(CString dir_path)
{
    CString path;
    CFileFind finder;
    //CString name;

    path.Format(_T("%s\\*.*"),dir_path);

    BOOL bfinddir = finder.FindFile(path);

    while (bfinddir) 
    {
        bfinddir = finder.FindNextFile();//查找下一个文件
        //name = finder.GetFilePath();//获得当前文件目录
        if (finder.IsSystem()) //判断是否是系统文件
        {
            continue;
        }
        if (finder.IsDirectory() && !finder.IsDots())//判断当前文件是否是文件夹,判断文件前面是否带.或.. 
        {
            //name = finder.GetFilePath();
            MyDelDir(finder.GetFilePath());//递归
            RemoveDirectory(finder.GetFilePath());//删除文件夹
        }
        else {
            //name = finder.GetFilePath();
            DeleteFile(finder.GetFilePath());
        }

    }
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: VC 6.0是微软公司开发的一款集成开发环境,MFC(Microsoft Foundation Classes)是其一部分,用于开发Windows平台上的C++应用程序。在VC 6.0中,MFC提供了丰富的文件操作功能,以便开发者可以方便地进行文件的读写和处理。 MFC中的文件操作主要通过CFile类来实现。要进行文件操作,首先需要创建一个CFile对象,并指定文件名和打开模式。打开模式可以是读取(CFile::modeRead)、写入(CFile::modeWrite)、读写(CFile::modeReadWrite)等。然后,可以通过CFile对象调用相应的方法来实现文件的读写操作。 常用的文件操作方法包括Read、ReadString、ReadHuge等。其中,Read方法用于读取指定数量的字节到缓冲区中,ReadString方法用于读取一行字符串,ReadHuge方法用于读取大型文件。在读取文件前,需要使用CFile的Open方法打开文件,读取完成后,需要调用Close方法关闭文件文件操作方法包括Write、WriteString、WriteHuge等。其中,Write方法用于将指定数量的字节从缓冲区写入文件中,WriteString方法用于将字符串写入文件,WriteHuge方法用于写入大型文件。在写入文件前,也需要使用CFile的Open方法打开文件,写入完成后,同样需要调用Close方法关闭文件。 此外,MFC还提供了其他一些文件操作的辅助功能,如文件的创建与删除、文件的属性设置、文件指针的定位等。 总之,VC 6.0中的MFC文件操作功能强大且灵活,可以满足各种文件操作的需求。开发者可以根据具体的应用场景,选择适合的文件操作方法,并结合其他MFC的功能,实现更加复杂的文件处理功能。 ### 回答2: VC 6.0是微软的一款集成开发环境,MFC(Microsoft Foundation Classes)是一套用于开发Windows应用程序的C++类库。在VC 6.0中,我们可以使用MFC进行文件操作MFC提供了一系列的类来进行文件的创建、打开、读取、写入和关闭等操作。首先,我们可以使用CFile类来创建或打开一个文件,并进行读写操作。我们可以使用Open函数来打开一个已经存在的文件或者使用Create函数来创建一个新的文件。然后,可以使用Read和Write函数进行数据的读取和写入。最后,使用Close函数关闭文件。通过这些函数,我们可以灵活地操作文件。 另外,MFC还提供了CStdioFile类,它是对CFile类的一个高级封装。使用CStdioFile类,我们可以更方便地进行文本文件的读写操作。例如,可以使用ReadString函数逐行读取文本文件的内容,使用WriteString函数将字符串写入文本文件。 此外,MFC还提供了CFileDialog类,用于显示文件选择对话框,方便用户选择文件。通过这个类,我们可以让用户选择要打开或保存的文件,并获取用户选择的文件路径。 总结起来,VC 6.0的MFC提供了丰富的文件操作类和函数,可以方便地进行文件的读写,包括二进制文件和文本文件。开发者可以根据自己的需要使用相应的类和函数来操作文件,以完成各种文件处理任务。 ### 回答3: VC 6.0的MFC(Microsoft Foundation Class)库提供了一些用于文件操作的类和函数,方便开发人员在Windows平台上进行文件的读写和管理。下面是一些常用的MFC文件操作相关的功能和类。 1. CFile类:CFile类是MFC提供的用于文件操作的基本类,它封装了文件的打开、读写、关闭等功能。通过CFile类的派生类CStdioFile可以实现对文本文件的读写操作。通过CFile类的派生类CMemFile可以在内存中创建文件。 2. CString类:CString类是MFC中用于处理字符串的类,可以将字符串写入文件或从文件中读取字符串。通过CFile类的WriteString()和ReadString()函数可以方便地进行字符串的写入和读取。 3. CArchive类:CArchive类使开发人员能够方便地对对象进行序列化和反序列化操作。通过CArchive类的派生类CFile和CMemFile可以将对象保存到文件中或从文件中读取对象。 4. 文件打开对话框:MFC提供了CFileDialog类,可以通过它打开一个文件选择对话框,选择需要进行操作文件路径和文件名。 5. 文件属性操作:通过CFile类的相关函数可以获取文件的属性信息,如文件的大小、创建时间、修改时间等。 6. 文件夹和目录操作MFC通过CFileFind类提供了对文件夹和目录的操作,可以遍历文件夹中的文件或子文件夹。 除了上述基本的文件操作类和函数外,MFC还提供了一系列的扩展类和函数,用于处理文件的权限、文件夹的创建和删除等操作。开发人员可以根据具体的需求选择合适的类和函数进行文件操作。但需要注意的是,VC 6.0已经较为古老,一些新的文件操作方式和技术,如C++文件流和Boost库等,可能在VC 6.0中并不适用。因此建议尽量使用更新的版本进行文件操作

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值