mfc文件操作CFile类之创建文件的方法

 更新时间:2019年04月15日 14:42:59   作者:夜的黑  
这篇文章主要介绍了mfc文件操作CFile类之创建文件的方法,需要的朋友可以参考下

mfc文件操作类CFile

CFile类的几种构造函数

CFile();//不带参数的构造函数。
CFile(int hFile);//带文件句柄参数的构造函数。
CFile(
LPCTSTR lpszFileName,//要打开的文件路径
UINT nOpenFlage //打开文件时的共享和访问模式
);//带文件路径和打开方式的构造函数

除了用构造函数打开文件外还可以用CFile类的成员函数Open来打开

OPen函数原型

virtual BOOL Open(
LPCTSTR lpszFilename,//打开文件的路径,可以是绝对路径,也可以是相对路径。
UINT nOpenFlags, //打开文件时的共享和访问模式。
CFileException *pError=NULL//打开文件的异常捕获变量
);

CFile构造函数和CFile成员函数Open的参数nOpenFlage 可以是以下任意组合(使用位或|组合):

CFile::modeCreate 新建文件,如果文件已存在,则清空文件长度。
CFile::modeNotruncate 与modeCreate组合使用。如果创建的文件已经存在,则打开已存在的文件,不存在则新建文件。
CFile::modeRead 以只读方式打开文件。
CFile::modeWrite 以只写方式打开文件。
CFile::modeNoInherit 阻止文件从子进程中继承。
CFile::shareDenyNone 共享读写的打开文件。
CFile::shareDenyRead 排它读权限打开文件。
CFile::shareDenyWrite 排它写权限打开文件。
CFile::shareExclusive 排它模式打开文件。
CFile::typeText 文本模式打开文件。
CFile::typeBinary 二进制以写模式打开该文件。

创建文件并打开示例:

void CMFCApplication42Dlg::OnBnClickedButton1()
{
  // TODO: 在此添加控件通知处理程序代码
  CString filename = _T("C:\\Users\\Administrator\\Desktop\\test.txt"); //定义文件名
  TRY //异常处理
  {
    CFile f(filename, CFile::modeCreate | CFile::modeWrite);
  }
  CATCH (CFileException, e)//异常触发
  {
    #ifdef _DEBUG //如果是调试模式
    afxDump << "打开文件失败" << e->m_cause << "\n";
    #endif

  }
  END_CATCH
}

总结

以上所述是小编给大家介绍的mfc文件操作CFile类之创建文件的方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

相关文章

  • C++ 数据结构超详细讲解顺序表

    C++ 数据结构超详细讲解顺序表

    程序中经常需要将一组数据元素作为整体管理和使用,需要创建这种元素组,用变量记录它们,传进传出函数等。一组数据中包含的元素个数可能发生变化,顺序表则是将元素顺序地存放在一块连续的存储区里,元素间的顺序关系由它们的存储顺序自然表示
    2022-03-03
  • C++中LibCurl库使用流程及配置详解

    C++中LibCurl库使用流程及配置详解

    libcurl是一个跨平台的开源网络传输库,它支持许多协议,包括HTTP、HTTPS、FTP、FTPS以及许多其他协议和文件传输方式,本文给大家详细介绍了C++中LibCurl库使用流程及配置,需要的朋友可以参考下
    2024-02-02
  • Qt 进度条的实现示例

    Qt 进度条的实现示例

    进度条在很多时候都可以用到,有时我们需要在表格,树状栏中直观显示任务进度或消耗百分比,本文就详细的介绍一下Qt 进度条的使用实例,感兴趣的可以了解一下
    2021-06-06
  • Qt实现输出日志到指定文件的操作方法

    Qt实现输出日志到指定文件的操作方法

    这篇文章主要介绍了Qt实现输出日志到指定文件的操作方法,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2024-07-07
  • C语言分支循环其嵌套语句的使用

    C语言分支循环其嵌套语句的使用

    本文主要介绍了switch 嵌套和循环嵌套,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11
  • C++11学习之右值引用和移动语义详解

    C++11学习之右值引用和移动语义详解

    c++11中引用了右值引用和移动语义,可以避免无谓的复制,提高了程序性能。这篇文章将通过一些示例和大家聊聊右值引用和移动语义的使用,感兴趣的可以了解一下
    2023-02-02
  • C语言实现高精度的加法

    C语言实现高精度的加法

    这篇文章主要为大家详细介绍了C语言实现高精度的加法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-05-05
  • C语言运用函数指针数组实现计算器功能

    C语言运用函数指针数组实现计算器功能

    这篇文章主要为大家详细介绍了C语言运用函数指针数组实现计算器功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-10-10
  • C语言数组任意位置插入一个元素方法

    C语言数组任意位置插入一个元素方法

    这篇文章主要给大家分享C语言数组任意位置插入一个元素方法,
    2021-11-11
  • 详解c/c++链式堆栈描述进制转换问题示例

    详解c/c++链式堆栈描述进制转换问题示例

    这篇文章主要为大家介绍了c/c++链式堆栈描述进制转换问题示例解析有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步
    2021-11-11

最新评论