在MFC中如何获取文件和文件夹的路径

MFC CFolderPickerDialog 和CFileDialog选择文件路径 第一种方法,使用CFolderPickerDialog函数,适用于高版本VS高版本: 打开选择文件路径 void CMFC1Dlg::OnBnClickedButtonOpen() {     CFolderPickerDialog fd(NULL, 0, this, 0);     if (fd.DoModal() == IDOK)     {         CStrin 阅读详情

在VC++编程中,获取文件的路径很容易通过CFileDialog来实现,代码示例如下:

	CFileDialog dlg(
		TRUE,"*.csv",NULL,
		OFN_FILEMUSTEXIST|OFN_PATHMUSTEXIST|OFN_HIDEREADONLY,
		"csv files(*.csv)|*.csv|All Files(*.*)|*.*||",NULL
		);
	dlg.m_ofn.lpstrTitle = "Open Arousal File";  //the title of the openfile dailog
	if(dlg.DoModal()!= IDOK)   //if don't get the arousal file
		return;
	arousalPath = dlg.GetPathName();  //get the arousal address
	UpdateData(FALSE);


通过上面的代码就可以获得一个文件的绝对路径,但有时我们需要获得文件夹的路径以便后续的操作,相对来说,获取文件夹的路径要复杂一点。代码如下:

	TCHAR szPath[_MAX_PATH];
	BROWSEINFO bi;
	bi.hwndOwner = GetSafeHwnd();
	bi.pidlRoot = NULL;
	bi.lpszTitle = "Please select the input path";
	bi.pszDisplayName = szPath;
	bi.ulFlags = BIF_RETURNONLYFSDIRS;
	bi.lpfn = NULL;
	bi.lParam = NULL;

	LPITEMIDLIST pItemIDList = SHBrowseForFolder(&bi);

	if(pItemIDList)
	{
		if(SHGetPathFromIDList(pItemIDList,szPath))
		{
			InputPath = szPath;
			//videoPath = inputImgPath;
		}

		//use IMalloc interface for avoiding memory leak
		IMalloc* pMalloc;
		if( SHGetMalloc(&pMalloc) != NOERROR )
		{
			TRACE(_T("Can't get the IMalloc interface\n"));
		}

		pMalloc->Free(pItemIDList);
		if(pMalloc)
			pMalloc->Release();
		UpdateData(FALSE);
	}
	else 
		InputPath = "";


MFC获取文件路径和文件夹路径 2、在界面上加一个按钮,单击按钮弹出一个对话框选择文件夹,在工程中获取文件夹的路径。1、在界面上加一个按钮,单击按钮弹出一个对话框选择文件,在工程中获得文件的路径; 阅读详情

相关推荐

mfc 中实现打开文件夹获取文件夹路径

//获取文件夹路径 CString GetDirectory() { BROWSEINFO bi; TCHAR name[MAX_PATH]; CString a("");  ZeroMemory(&bi,sizeof(BROWSEINFO)); bi.hwndOwner = AfxGetMainWnd()->GetSafeHwnd(); bi.pszDisplayName = n

u010829733的专栏 1335

CFileDialog获取文件与文件夹路径

1. 文件路径 CFileDialog dlg(TRUE, L"avi", NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, L"(*.avi;*.mp4;*.wmv;*.asm)|*.avi;*.mp4;*.wmv;*.asm||"); if (dlg.DoModal() == IDOK) { CString str_path = dlg.G...

墨痕诉清风的博客 3943

MFC获取某个路径文件夹下所有文件名

需求:调用本机的播放器播放某个文件下的MP4的文件 应用场景:获取某个文件夹下的所有文件名,播放指定的文件 Step1 获取某个文件夹下的所有文件名 void Cxxx_Dialog::GetFileFromDirectory(CString csDirPath, vector<CString> &vctPath) { csDirPath+="*.mp4"; HAN...

JamesWu9527的博客 5336

新风格MFC文件夹(目录)选择对话框CFolderPickerDialog

新风格选择目录或文件夹样式,如下图: 提示:此类仅适用于vista及以上windows操作系统。在xp系统上选择目录会变成选择文件。 方式一【推荐】:使用MFC的CFolderPickerDialog void CMCFolderPickerDialogDemoDlg::OnBnClickedButton1() { CFolderPickerDialogcfd(NULL, 0, this, 0); if (cfd.DoModal() ==...

技术皮皮虾 1979

如何用CFileDialog得到一个文件夹的路径?

今晚突发奇想想做一个类似widows的搜索文件小程序,在http://topic.youkuaiyun.com/t/20041027/15/3496061.html发现一段经典代码特记录如下,以备不时只需。code:void CFindFileDlg::OnButton1() { // TODO: Add your control notification handler code here BR

抬头做人低头做事 4801

MFC 1.获取文件路径 2.获取文件夹路径 3.获取程序根目录

【代码】MFC 1.获取文件路径 2.获取文件夹路径。

sam的博客 1868

MFC学习——获取文件夹和文件路径

MFC学习——获取文件夹和文件路径

阿木寺的博客 3019

基于eNSP的小型企业网络设计

在本次计算机网络课程设计中,围绕“小型企业网络搭建”这一主题,成功构建了一个高效、安全且易于管理的企业内部网络。通过本次课程设计,我们不仅掌握了小型企业网络搭建的关键技术和最佳实践,还培养了团队协作和问题解决的能力。本项目所构建的网络系统不仅满足了当前的业务需求,还具备良好的可扩展性和灵活性,为企业未来的数字化转型奠定了坚实的基础。

m0_67403143的博客 1442

MFC中获取文件路径和文件夹路径

最近做一个MFC的小界面,需要实现这样两个功能:1、在界面上加一个按钮,单击按钮弹出一个对话框选择文件,在工程中获得文件的路径;2、在界面上加一个按钮,单击按钮弹出一个对话框选择文件夹,在工程中获取文件夹的路径。一、获取文件的路径// -- 按钮的消息响应函数 void CDialogSampled::OnBnClickedButtonOpen() { // TODO: 在此添加控件通知处理

JoliceYu的技术博客 1万+

vscode+latex+bib文献管理

下载vscode 安装插件`` 在setting.json中配置 在.tex文件中编写论文内容,然后左侧TEX侧边栏中编译,如下图所示,中文用xelatex,英文用pdflatex;编译成功后,就可以查看pdf版本的论文了,我一般在浏览器显示。 涉及到文献编译:XXX.bib中存储文献管理内容;XXX.tex是文章内容,使用xelatex编译后会生成XXX.aux,ctrl+⋅ctrl+·ctrl+⋅打开命令行窗口,输入bibtex XXX(可以对aux文件进行编译,不需要加后缀),然后再xelatex.

小卜妞的博客 2548

drm 之modes

#define _GNU_SOURCE #include <errno.h> #include <fcntl.h> #include <stdbool.h> #include <stdint.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/mman.h> #include <time.h&...

u012794472的专栏 3716

MFC的文件操作——获取指定文件夹下面所有文件(夹)路径和删除指定文件夹下面所有文件

【代码】MFC的文件操作——获取指定 文件/文件夹 下面所有文件路径和删除指定文件夹下面所有文件。

NCUTer 4147

基于FPGA的DDS信号发生器

之前的博客讲到了DDS的基本原理,现在用Verilog代码实现DDS,能够产生四种波形,方波,三角波,正弦波,锯齿波,用按键来控制频率和选择波形。其中按键消抖模块来自小梅哥的FPGA自学笔记设计与验证这本书。 module DDS_Module( Clk, Rst_n, EN, Fword, Key1, Pword, DA_Clk, DA_Data ); input Clk...

qq_43534451的博客 9949

MFC中获取文件夹路径对话框

MFC获取文件夹路径利用SHBrowseForFolder函数获取文件夹路径例子CString m_strFileOut=_T(""); TCHAR servPath[MAX_PATH ]; BROWSEINFO bi; LPITEMIDLIST pidl;//文件目录转换成可读取字符串LPITEMIDLIST bi.hwndOwner =this->m_hWnd ;

u010623565的博客 948

串口、COM、UART、TTL、USB、RS-232、RS-485、I2C、SPI、CAN、1-WIRE

一文搞定,赶紧收藏吧

记得诚 3万+

RT-DETR改进策略【Conv和Transformer】| ICCV-2023 iRMB 倒置残差移动块 轻量化的注意力模块

本文记录的是利用模块优化的目标检测网络模型。的作用在于克服了常见模块无法同时吸收CNN 效率建模局部特征和利用Transformer 动态建模能力学习长距离交互的问题。相比一些复杂结构或多个混合模块的方法,能更好地权衡模型成本和精度。本文将其用于的模型改进和二次创新,更好地突出重要特征,提升模型性能。Rethinking Mobile Block for Efficient Attention-based Models从微观角度看,由和组成。及其改进的实现代码如下: 四、创新模块 4.1 改进点1⭐ 模块

Limiiiing的博客 816

MFC 获取文件和文件夹的路径

1.获取文件的路径 CFileDialog fileDlg(TRUE); fileDlg.m_ofn.lpstrTitle=L"打开文件"; //fileDlg.m_ofn.lpstrFilter=_T("Program(*.exe)\0*.exe\0All Files(*.*)\0*.*\0\0"); if(IDOK==fileDlg.DoModal()) { LPWSTR lpP

六月心悸 2734

Windows 11 WSL2环境下OpenClaw部署的兼容性问题分析与解决方案研究

本文研究了OpenClaw在Windows 11 WSL2环境下的部署方案。WSL2通过无缝集成Linux与Windows系统,为OpenClaw提供了良好的运行环境,支持GPU加速和跨平台开发。文章详细分析了硬件配置要求(推荐8核CPU/16GB内存/NVMe SSD)、系统选择(Windows 11 Pro+Ubuntu 22.04)以及部署步骤,包括WSL2启用、Linux发行版安装、Python/Node.js/Redis等依赖配置。通过优化.wslconfig文件参数(如内存分

博客 2279

VC++ MFC 获取文件路径 获取文件夹路径

//=文件的路径=== CString strPath = _T(""); CFileDialog Open(TRUE,_T("*.bmp"),NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,_T("Bitmap Files (*.bmp)|*.bmp|JPEG Files (*.jpg)|*.jpg|All Files (*.*)|*.*||"),NU

lyd_253261362的专栏 1万+

5、高级综合技术:从调度到优化的全面解析

本文深入解析了高级综合技术,涵盖从控制/数据流图构建、调度算法、分配绑定策略到编译器优化的全流程。通过案例分析和对比,探讨了不同优化策略对性能和资源利用的影响,并总结了关键要点及未来发展趋势,为高效利用FPGA实现数字设计提供了全面指导。

night的博客 117

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

MFC获取某文件夹下的后缀文件所在路径

MFC获取文件夹所在路径,和文件夹内的文件路径

kingzhou_的博客 663

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

MFC 检测文件存在、获取当前路径、新建文件夹

直接上代码: ///////查看执行文件的路径下面是否有db文件夹,若没有则新建///////// CFileFind cff; if (cff.FindFile(_T("db")) == 0)     //当前路径,没找到db文件夹 {   CString strText;   TCHAR exepath[MAX_PATH]={0};   ::GetModuleFileName(NUL...

weixin_30629653的博客 499

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

MFC 获取当前路径,创建文件夹,创建文件,读取当前时间,获取桌面路径,list control控件显示数据

MFC 获取当前路径,创建文件夹,创建文件,读取当前时间。

yuchunhai321的博客 1168

MFC下获取文件夹路径 的办法

参考了网站: http://www.cnblogs.com/lovelyx/p/4867134.html bool bGetFolderPath(char * pFolderPath, int iLen) { BROWSEINFO bi; LPITEMIDLIST pidl; bi.hwndOwner = this->m_hWnd; bi.pidlRoot = NULL

liji_digital的博客 2607
上一篇: 虹膜图像分割(二)外圆检测
下一篇: 傅里叶分析之掐死教程(完整版)
IT修道者
IT修道者 领域专家: 人工智能技术领域 领域专家: 人工智能技术领域
博客等级 码龄17年 326粉丝 95原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值