VS MFC CFileDialog类 打开文件对话框和另存为对话框

 1 explicit CFileDialog(
 2    BOOL bOpenFileDialog,     指定的参数创建哪种类型的对话框。 设置到构造 文件已打开 对话框的 TRUE。 设置到构造 保存文件 对话框的 FALSE。
 3    LPCTSTR lpszDefExt = NULL,    默认的文件扩展名。 如果用户在文件名框中不包括包含在用户的计算机上的关联) 的已知扩展 (一,lpszDefExt 指定的扩展自动追加到文件名。 如果此参数是 NULL,扩展不是追加。
 4    LPCTSTR lpszFileName = NULL,    显示文件名框的初始文件名。 如果 NULL,不是初始文件名显示。
 5    DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,    可以使用自定义对话框一个或多个标记的组合。 有关这些标志的说明,请参见。Windows SDK的 OPENFILENAME 结构。 如果修改 m_ofn.Flags 结构成员,请使用按位或运算符在您的更改保持默认值行为不变。
 6    LPCTSTR lpszFilter = NULL,    一系列字符串名称的筛选器可应用于文件。 如果指定的文件筛选器,因此,只有符合筛选条件将出现在文件的文件的列表。 请参见"备注"部分有关如何安装的更多信息与文件筛选器一起使用。
 7    CWnd* pParentWnd = NULL,    指针到文件对话框的父级或所有者窗口。
 8    DWORD dwSize = 0,
 9    BOOL bVistaStyle = TRUE
10 );

1.另存为对话框
 1 void CMFCApplication_testDlg::OnFileWrite()
 2 {
 3     // TODO: 在此添加命令处理程序代码
 4     //CFile::modeCreate    创建文件,若已存在,则清空内容
 5     //CFile::modeWrite    可写
 6
 7     //szFilters is a text string that includes some file name filters:
 8     static TCHAR szFilter[] = _T("Chart Files (*.xlc)|*.xlc|")
 9    _T("Worksheet Files (*.xls)|*.xls|Data Files (*.xlc;*.xls)|")
10    _T("*.xlc; *.xls|All Files (*.*)|*.*||");
11     CFileDialog fileDlg(FALSE,NULL,NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,szFilter);
12     fileDlg.m_ofn.lpstrTitle = _T("Linden");    //设置对话框的标题
13     //fileDlg.m_ofn.lpstrFilter = _T("Text Files(*.txt)\0*.txt\0All Files(*.*)\0*.*\0\0");    //设置文件的过滤条件
14     fileDlg.m_ofn.lpstrDefExt = _T("txt");    //设置默认扩展名
15     if(IDOK == fileDlg.DoModal()){
16         CFile file(fileDlg.GetPathName(),CFile::modeCreate | CFile::modeWrite);
17         char pBufWrite[] = "test:abcdefghijklmny";
18         file.Write(pBufWrite,strlen(pBufWrite));
19         file.Close();
20     }
21 }

2.打开文件对话框

 1     CFileDialog fileDlg(TRUE);
 2     fileDlg.m_ofn.lpstrFilter = _T("文本文件(*.txt)|*.txt|Word文件(*.doc)|*.doc|所有文件(*.*)|*.*||");        //设置过滤器
 3     if(IDOK == fileDlg.DoModal()){
 4         CFile file(fileDlg.GetPathName(),CFile::modeRead);    //GetPathName():得到完整的文件名,包括目录名和扩展名如:c:\test\test1.txt
 5         char *pBuf;
 6         DWORD dwFileLen;
 7         dwFileLen = file.GetLength();
 8         pBuf = new char[dwFileLen + 1];
 9         pBuf[dwFileLen] = 0;
10         file.Read(pBuf,dwFileLen);
11         file.Close();
12         ::MessageBoxA( 0, pBuf, 0, MB_OK );    //VS2012默认工程字符集为UNICODE
13     }
时间: 2024-12-22 06:04:16

VS MFC CFileDialog类 打开文件对话框和另存为对话框的相关文章

C#中FolderBrowserDialog类打开文件夹使用说明

C#中FolderBrowserDialog类打开文件夹使用说明 ??作用:打开文件选择窗口获取文件夹路径. ??导入的命名空间为: System.Windows.Forms; 属性: ??Description:打开文件框的标题. ??ShowNewFolderButton:是否显示新建文件夹按钮. ??SelectedPath:选择的路径. ??RootFolder:表示根目录的位置. folderBrowserDialog1.RootFolder = Environment.Special

mfc CFileDialog类

知识点: CFileDialog类 SetBitmap LoadImage 动态显示图片 一.CFileDialog类 构造函数 CFileDialog( BOOL bOpenFileDialog, LPCTSTR lpszDefExt = NULL, LPCTSTR lpszFileName = NULL, DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, LPCTSTR lpszFilter = NULL, CWnd* pPare

为程序添加“打开文件”对话框和“另存为”对话框

1.相关类:CFileDialog类 CFileDialog( BOOL bOpenFileDialog, LPCTSTR lpszDefExt = NULL, LPCTSTR lpszFileName = NULL, DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, LPCTSTR lpszFilter = NULL, CWnd* pParentWnd = NULL ); bOpenFileDialog:如果将此参数设为TRUE,则

CFileDialog 打开文件夹文件 保存文件夹文件

格式说明: explicit CFileDialog( BOOL bOpenFileDialog,                         //TRUE 为打开, FALSE 为保存 LPCTSTR lpszDefExt = NULL,                 // 默认文件扩展名 LPCTSTR lpszFileName = NULL,            //文件对话框中 初始的文件名称 DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVER

关于打开文件夹函数的用法 OpenFileDialog(转载)

CFileDialog文件选择对话框的使用:首先构造一个对象并提供相应的参数,构造函数原型如下: CFileDialog::CFileDialog( BOOL bOpenFileDialog, LPCTSTR lpszDefExt = NULL, LPCTSTR lpszFileName = NULL, DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, LPCTSTR lpszFilter = NULL, CWnd* pParentW

【mfc】使用系统文件对话框打开文件与保存文件、利用StdAfx.h设置全局变量

在<[mfc]利用文件的读写,theApp全局变量来现实登录帐号管理系统>(点击打开链接)中,虽然也使用到文件的打开与保存,但这是在用户打开与关闭对话框的时候就自动进行的.现在设置一个"打开"按钮与一个"保存"按钮,可以让用户自由选择保存的文件的位置,输入文件名,但是,保存的文件格式只能是我们指定的.ifo,因为以后打开文件,我们只接受.ifo的打开.本文亦是<[mfc]不同对话框之间互相操控.全局变量与日期控件>(点击打开链接)的进一步工作

MFC程序打开文件对话框出错的问题解决

前几天从网上下了个图像分析的mfc小程序,是VC6的 用VC6在本地编译生成都没问题,运行起来弹出一个未处理的错误,程序崩溃退出. 想起来原来遇到过打开文件对话框方面的问题,当时项目时间紧张未能深究. 这次要好好看下这个问题. 具体做法就是深入细致的跟踪.跟踪.跟踪... 应用代码,跟进 MFC的代码,跟进 Alt+8调出反汇编,跟进... 反复多次重复追踪.缩小目标,确定问题是:在CFileDialog 的析构函数中,调用了CString 的析构函数, 恰恰是析构CSring 出错了. CFi

MFC 打开文件对话框 打开单个文件

CFileDialog的语法: CFileDialog(BOOL bOpenFileDialog,LPCTSTR lpszDefExt=NULL,LPCTSTR lpszFileName=NULL,DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,LPCTSTR lpszFilter=NULL,CWnd * pParentWnd=NULL);  第一个参数 bOpenFileDialog为TRUE或FALSE.TRUE为打开文件:FAL

MFC打开文件的方法

已经看懂的方法: CFileDialog类封装了Windows常用的文件对话框.常用的文件对话框提供了一种简单的与Windows标准相一致的文件打开和文件存盘对话框功能. CFileDialog的语法: CFileDialog(BOOL      bOpenFileDialog, LPCTSTR     lpszDefExt=NULL, LPCTSTR      lpszFileName=NULL, DWORD     dwFlags     =     OFN_HIDEREADONLY