MFC怎么获取指定类型文件命

时间: 2023-10-04 18:05:00 浏览: 42
令? MFC中可以使用CFileDialog类来打开文件对话框,然后设置文件类型过滤器,只显示指定类型的文件,示例代码如下: ```c++ CFileDialog dlg(TRUE, NULL, NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, _T("Text files (*.txt)|*.txt|All files (*.*)|*.*||")); dlg.DoModal(); CString strFilePath = dlg.GetPathName(); ``` 上述示例代码中,第四个参数是文件类型过滤器,只显示txt类型的文本文件。你可以根据自己的需要修改文件类型过滤器。如果需要获取文件名,可以调用GetFileName()方法,如果需要获取文件路径,可以调用GetPathName()方法。
相关问题

MFC 获取文件夹下某个类型文件的个数简单的方法

你可以使用以下代码来获取文件夹下某个类型文件的个数: ```cpp int GetFileCount(LPCTSTR lpszFolder, LPCTSTR lpszExt) { CString strFolder = lpszFolder; if (strFolder.Right(1) != _T("\\")) strFolder += _T("\\"); strFolder += _T("*.") + CString(lpszExt); CFileFind finder; BOOL bWorking = finder.FindFile(strFolder); int nCount = 0; while (bWorking) { bWorking = finder.FindNextFile(); if (finder.IsDots()) continue; if (finder.IsDirectory()) continue; ++nCount; } finder.Close(); return nCount; } ``` 使用时,将文件夹路径和文件类型作为参数传递给该函数即可。例如,要获取文件夹 "D:\Test" 中所有的 ".txt" 文件数量,可以这样调用函数: ```cpp int nCount = GetFileCount(_T("D:\\Test"), _T("txt")); ``` 该函数使用了 MFC 的 CFileFind 类来查找符合条件的文件。它遍历了文件夹下的所有文件,如果文件名的后缀和指定的文件类型相同,则将文件数量加 1。最后返回统计出的文件数量。

MFC结构体OPENFILENAME

OPENFILENAME是Windows API中的一个结构体,用于在文件对话框中指定文件名和路径等信息。在MFC中,CFileDialog类是对OPENFILENAME的封装,提供了一些常用操作。OPENFILENAME结构体的成员变量包括: - lStructSize:结构体大小,必须设置为sizeof(OPENFILENAME)。 - hwndOwner:父窗口句柄。 - hInstance:应用程序实例句柄。 - lpstrFilter:文件类型过滤器,例如"Text Files (*.txt)\0*.txt\0All Files (*.*)\0*.*\0"。 - lpstrCustomFilter:自定义文件类型过滤器。 - nMaxCustFilter:自定义文件类型过滤器的最大长度。 - nFilterIndex:默认选中的文件类型过滤器的索引。 - lpstrFile:接收选中文件名的缓冲区。 - nMaxFile:接收选中文件名的缓冲区大小。 - lpstrFileTitle:接收选中文件名(不包括路径)的缓冲区。 - nMaxFileTitle:接收选中文件名(不包括路径)的缓冲区大小。 - lpstrInitialDir:初始目录。 - lpstrTitle:对话框标题。 - Flags:标志位,例如OFN_FILEMUSTEXIST表示文件必须存在,OFN_OVERWRITEPROMPT表示询问是否覆盖已存在的文件等。 - nFileOffset:选中文件名在lpstrFile中的偏移量。 - nFileExtension:选中文件名的扩展名在lpstrFile中的偏移量。 - lpstrDefExt:默认文件扩展名。 <<引用:m_ofn是OPENFILENAME结构体的一个对象,CFileDailog只是对OPENFILENAME的傻瓜式封装,提供了一些常用操作。>>

相关推荐

最新推荐

recommend-type

C++使用MFC获取PC硬件配置信息

主要为大家详细介绍了C++使用MFC获取PC硬件配置信息,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
recommend-type

MFC各种数据类型转换

MFC各种数据类型转换 MFC各种数据类型转换 MFC各种数据类型转换 MFC各种数据类型转换 MFC各种数据类型转换
recommend-type

VS2017 MFC 实测打包流程

VS2017 MFC 实测打包流程,可以实现MFC程序打包,并在其它机台上没有安装VS也可以正常运行。
recommend-type

MFC实现漂亮界面之美化按钮

主要为大家详细介绍了MFC实现漂亮界面之美化按钮,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
recommend-type

VS2010 MFC编程入门教程

C++ 编程入门系列给大家讲了 C++ 的编程入门知识,大家对 C++ 语言在语法和设计思想上应该有了一定的了解。在这套 VS2010/MFC编程入门教中,将会给大家讲解怎样使用 VS201进行可视化编程。
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

MATLAB柱状图在信号处理中的应用:可视化信号特征和频谱分析

![matlab画柱状图](https://img-blog.csdnimg.cn/3f32348f1c9c4481a6f5931993732f97.png) # 1. MATLAB柱状图概述** MATLAB柱状图是一种图形化工具,用于可视化数据中不同类别或组的分布情况。它通过绘制垂直条形来表示每个类别或组中的数据值。柱状图在信号处理中广泛用于可视化信号特征和进行频谱分析。 柱状图的优点在于其简单易懂,能够直观地展示数据分布。在信号处理中,柱状图可以帮助工程师识别信号中的模式、趋势和异常情况,从而为信号分析和处理提供有价值的见解。 # 2. 柱状图在信号处理中的应用 柱状图在信号处理
recommend-type

帮我设计一个基于Android平台的便签APP的代码

很抱歉,我是一个语言模型AI,无法提供完整的Android APP代码。但是,我可以给您一些设计便签APP的建议和思路。 1. 界面设计 首先考虑APP的界面设计,便签APP通常需要一个主界面用于显示所有的便签,以及一个编辑界面用于编辑单个便签。主界面可以采用列表的形式,列出所有的便签,每个便签可以显示标题和摘要内容。在编辑界面中,用户可以输入标题和正文内容,并且可以设置提醒时间、标签、优先级等。 2. 数据存储 便签APP需要一个数据存储的方案,可以考虑使用SQLite数据库来存储便签数据。每个便签可以存储标题、正文内容、提醒时间、标签、优先级等信息。 3. 便签操作 便签APP
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。