CFileDialog的基本使用
CFileDialog文件选择对话框的使用:首先构造一个对象并提供相应的参数,构造函数原型如下:
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则显示保存对话文件对话框。
lpszDefExt 指定默认的文件扩展名。
lpszFileName 指定默认的文件名。
dwFlags 指明一些特定风格。
lpszFilter 是最重要的一个参数,它指明可供选择的文件类型和相应的扩展名。参数格式如:
"Chart Files (*.xlc)|*.xlc|Worksheet Files (*.xls)|*.xls|Data Files (*.xlc;*.xls)|*.xlc; *.xls|All Files (*.*)|*.*||";文件类型说明和扩展名间用 | 分隔,同种类型文件的扩展名间可以用 ; 分割,每种文件类型间用 | 分隔,末尾用 || 指明。
pParentWnd 为父窗口指针。
创建文件对话框可以使用DoModal(),在返回后可以利用下面的函数得到用户选择:
CString CFileDialog::GetPathName( ) 得到完整的文件名,包括目录名和扩展名如:c: est est1.txt
CString CFileDialog::GetFileName( ) 得到完整的文件名,包括扩展名如:test1.txt
CString CFileDialog::GetExtName( ) 得到完整的文件扩展名,如:txt
CString CFileDialog::GetFileTitle ( ) 得到完整的文件名,不包括目录名和扩展名如:test1
POSITION CFileDialog::GetStartPosition( ) 对于选择了多个文件的情况得到第一个文件位置。
CString CFileDialog::GetNextPathName( POSITION& pos ) 对于选择了多个文件的情况得到下一个文件位置,并同时返回当前文件名。但必须已经调用过POSITION CFileDialog::GetStartPosition( )来得到最初的POSITION变量。
如何进行文件操作
取得文件名
{
CString
FilePathName;
CFileDialog dlg(TRUE);///TRUE为OPEN对话框,FALSE为SAVE AS对话框
if(dlg.DoModal()==IDOK)
FilePathName=dlg.GetPathName();
}
相关信息:CFileDialog 用于取文件名的几个成员函数:
假如选择的文件是C:WINDOWSTEST.EXE
则:
(1)GetPathName();取文件名全称,包括完整路径。取回C:WINDOWSTEST.EXE
(2)GetFileTitle();取文件全名:TEST.EXE
(3)GetFileName();取回TEST
(4)GetFileExt();取扩展名EXE
打开文件
CFile file("C:HELLO.TXT",CFile::modeRead);///只读方式打开
///CFile::modeRead可改为 CFile::modeWrite(只写),CFile::modeReadWrite(读写),CFile::modeCreate(新建)
例子:
{
CFile file;
file.Open("C:HELLO.TXT",CFile::modeCreate|Cfile::modeWrite);
...
...
}
移动文件指针
file.Seek(100,CFile::begin);///从文件头开始往下移动100字节
file.Seek(-50,CFile::end);///从文件末尾往上移动50字节
file.Seek(-30,CFile::current);///从当前位置往上移动30字节
file.SeekToBegin();///移到文件头
file.SeekToEnd();///移到文件尾
读写文件
读文件:
char buffer[1000];
file.Read(buffer,1000);
写文件:
CString string("这个世界只有偏执狂才能成功");
file.Write(string,8);
关闭文件
file.Close();
CFileDialog的基本使用相关推荐
- MFC中利用CFileDialog选择文件并读取文件所遇到的问题和解决方法
在用MFC编写一个上位机时,需要实现选择和读取一个二进制文件,本来以为很简单的但是在实现过程中遇到很多问题,所幸都一一解决,这里做一下记录. 首先在实现文件选择,在界面上设置一个按钮,并在点击事件函数 ...
- MFC调用CFileDialog之后目录居然会改变,调试了好久终于发现是这个问题
MFC调用CFileDialog之后目录居然会改变,调试了好久终于发现是这个问题,上网搜了下,发现也有人和我出现相同的问题.他的博客如下: http://www.programlife.net/cur ...
- CFileDialog的使用方法简单介绍
CFileDialog文件选择对话框的使用:首先构造一个对象并提供对应的參数,构造函数原型例如以下: CFileDialog::CFileDialog( BOOL bOpenFileDialog, L ...
- CFileDialog 打开多个目录下的多个文件
使用CFileDialog 打开多个文件,获取文件路径.一般的使用情况为同一个文件夹目录下的某些文件,除文件名不一致外,前面路径均一样,使用GetStartPosition(),GetNextPath ...
- CFileDialog 在使用sdk 后出现异常 Access violation
/*************************************************************************************************** ...
- mfc 监控文件操作_实战经验:使用CFileDialog实现多个文件选择
问题 最近需要实现文件选择的功能,要求是需要弹出系统标准的文件选择对话框,另外,允许用户选择多个文件. 解决方法 MFC中有一个类CFileDialog就是用来做这件事的,而且功能还挺丰富,今天只是使 ...
- MFC——文件打开和保存对话框(CFileDialog)
最近要做一个文件打开和保存的对话框,现将相关的代码记录如下,用以备忘! 所用控件: 2个静态标签(Static Text):用以显示功能标签: 2个文本框(Edit):用以显示打开的文件路径全名要保存 ...
- 关于 CFileDialog 对话框多选功能的一个问题
From: http://www.vckbase.com/document/viewdoc/?id=1544 最近有位读者来信指出:<在线杂志>第26期中有一篇文章:"再谈 CF ...
- CFileDialog
https://baike.baidu.com/item/CFileDialog/9747028
最新文章
- python绘图和可视化_Python 绘图和可视化详细介绍
- Prototype Pattern(原型模式)
- 学完html4需要学什么,学完了html4,再学习html5需要重点学习什么??
- AC自动机解决字符集很大的情况(可持久化数组优化getfail的过程)
- 高薪Java工程师必看的书籍
- 播放提示音+页面右下角提示框
- cf 165 div2 解题报告
- 输入设备名输入输出设备的重定向
- linux远程控制木马,Kali Linux-使用Shellter生成远控木马并进行持久化控制
- 2009年度优科豪马轮胎全国经销商会议在三亚召开
- 多项全国首创技术加持,重回长沙对哈啰、美团、青桔意味着什么?
- win7默认网关不可用怎么修复 win7默认网关不可用的快速解决方法
- 用阿里云建站模版套餐云速成美站有没有可能不容易被seo抓取排名?
- 初二因式分解奥数竞赛题_初中数学因式分解(含答案)竞赛题精选.doc
- 25个值得收藏的导航类网站合集
- TTE系统容错设计(1) ——集中守护机制
- 讯飞:糖尿病遗传风险预测Coggle挑战赛公开
- 颜色的前世今生1·一切从光开始
- android 多媒体框架服务之StagefrightPlayer和OMXCodec实现原理学习
- 持续发挥供应链优势,美菜网助力春节期间餐饮业回春