选择目录对话框

void C资源共享吧视频广告清理工具Dlg::OnBnClickedCls()
{
// 清空编辑框内容
m_Edit.SetWindowTextW(L"");
m_Edit2.SetWindowTextW(L"");
// 打开一个文件夹选择对话框(选择目录)
CFolderPickerDialog dlg;
// 设置对话框标题
dlg.m_ofn.lpstrTitle = TEXT("请选择清理目录");
// 点击了选择文件夹才去清理垃圾
if (dlg.DoModal() == TRUE)
{
// 获取选则的目录
CString path = dlg.GetFolderPath();
// 设置编辑框内容(m_Edit 是 CEdit 类型)
m_Edit.SetWindowTextW(path);
// 清理广告
ClsAd(path);
}
else
{
::MessageBox(, L"请选择清理目录!", L"提示", );
}
}

选择文件对话框

// 1、打开一个文件夹选择对话框
CFileDialog dlg(TRUE);
if (dlg.DoModal() == IDOK)
{
CString path = dlg.GetFolderPath();
// 2、获取选择的文件的后缀名,判断是否是DLL
CString path1 = dlg.GetFileName();
PCTSTR FileType = PathFindExtension(path1);
if (wcscmp(FileType, L".dll") != )
{
m_Edit2.SetWindowText(L"");
return;
}
// 3、将文件路径显示到编辑框
m_Edit2.SetWindowText(path + L"\\" + path1);
}

指定目录遍历文件

void C资源共享吧视频广告清理工具Dlg::ClsAd(const CString path)
{
// 调用FindFirstFile找到这个目录下的第一个文件/文件夹
WIN32_FIND_DATA fData = { };
HANDLE hFind = FindFirstFile(path + "\\*", &fData);
if (hFind == INVALID_HANDLE_VALUE)
{
::MessageBox(, L"查找文件失败!", L"提示", );
return;
}
// 再循环调用FindNextFile得到后续所有的文件/文件夹
do
{
CString strName(fData.cFileName);
// 过滤掉当前目录和上一级目录
if (wcscmp(fData.cFileName, L".") == || wcscmp(fData.cFileName, L"..") == )
{
continue;
}
// 查找广告文件删除
if (wcscmp(fData.cFileName, L"本教程由资源共享吧提供.url") == || wcscmp(fData.cFileName, L"下载必看.txt") == || wcscmp(fData.cFileName, L"更多精品教程.url") == )
{
CString strText = _T("");
// 获取编辑框2当前文本
m_Edit2.GetWindowTextW(strText);
// 拼接字符串
strText += path + L"\\" + strName + L"已删除!\r\n";
// 设置编辑框2文本
m_Edit2.SetWindowTextW(strText);
// 删除文件
DeleteFile(path + L"\\" + strName);
}
// 如果文件是一个文件夹的话, 就递归遍历
if (fData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
{
ClsAd(path + L"\\" + strName);
}
} while (FindNextFile(hFind, &fData));
}

MFC_选择目录对话框_选择文件对话框_指定目录遍历文件的更多相关文章

  1. scp从远程指定目录拷贝文件到本地指定目录

    scp从远程指定目录拷贝文件到本地指定目录 [root@picts ~]# cat /root/scp_pictures.sh #!/bin/bash # Function: copy files f ...

  2. webpack-dev-server将文件产出到指定目录

    默认情况下webpack-dev-server是将文件产出到内存中,写了一个插件 将文件产出到指定目录, 比较简易啊 哈哈哈 使用代码如下 const WebpackDevServerOutput = ...

  3. java中把文件拷贝到指定目录下最简单几种方法

    java中把文件拷贝到指定目录下最简单几种方法   String savePath = "D:/file";// 文件保存到d盘的file目录下 File savefile = n ...

  4. PPT文件流转为图片,并压缩成ZIP文件输出到指定目录

    实现流程: 接收InputStream流->复制流->InputStream流转为PPT->PPT转为图片->所有图片压缩到一个压缩文件下 注意: 1.PPT文件分为2003和 ...

  5. python实现上传文件到linux指定目录

    今天接到一个小需求,就是想在windows环境下,上传压缩文件到linux指定的目录位置并且解压出来,然后我想了一下,这个可以用python试试写下. 环境:1.linux操作系统一台2.window ...

  6. Java解压上传zip或rar文件,并解压遍历文件中的html的路径

    1.本文只提供了一个功能的代码 public String addFreeMarker() throws Exception { HttpSession session = request.getSe ...

  7. Linux下删除空文件,删除指定大小的文件

    Linux下批量删除空文件(大小等于0的文件)的方法: find . -name "*" -type f -size 0c | xargs -n 1 rm -f 用这个还可以删除指 ...

  8. 利用gulp把本地文件移动到指定待发布文件夹

    一.目标 把本地的文件移动到待发布的文件中,把static_grab文件中file.txt所列文件列表移动到beta对应文件夹中: 二.实现 var gulp = require('gulp'), w ...

  9. linux文件夹操作及递归遍历文件夹

    文件夹相关函数介绍 //mkdir 函数创建文件夹 #include <sys/stat.h> #include <sys/types.h> int mkdir(const c ...

  10. c#winform选择文件,文件夹,打开指定目录方法

    private void btnFile_Click(object sender, EventArgs e) { OpenFileDialog fileDialog = new OpenFileDia ...

随机推荐

  1. vue 创建监听,和销毁监听(addEventListener, removeEventListener)

    最近在做一个有关监听scroll的功能, 发现我添加监听之后一直不起作用: 1 2 mounted() {     window.addEventListener("scroll" ...

  2. python 玩爬虫安装了一大堆第三方库

    之前就听说过爬虫,感觉很复杂的样子,但是看到python代码很简短.由于本机已经安装了python2.7 所以就拿来py 文件跑一下想看看效果. 结果各种代码错误.然后根据每个错误去下载对应的依赖项. ...

  3. python开发笔记-字典按值排序取前n个key值

    场景举例: 假如我们有某个班级的语文成绩数据,格式为字典,其中字典key为学生姓名,value为学生成绩: 那么,如何获得单科成绩排名前3的学生姓名? 代码如下:--数据样例,方便测试 def dic ...

  4. WebGL学习笔记(三):绘制一个三角形

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. (转)自动微分(Automatic Differentiation)简介——tensorflow核心原理

    现代深度学习系统中(比如MXNet, TensorFlow等)都用到了一种技术——自动微分.在此之前,机器学习社区中很少发挥这个利器,一般都是用Backpropagation进行梯度求解,然后进行SG ...

  6. UUID算法系列各自有何优缺点( UUID1--UUID5)

    UUID具有以下涵义: 经由一定的算法机器生成为了保证UUID的唯一性,规范定义了包括网卡MAC地址.时间戳.名字空间(Namespace).随机或伪随机数.时序等元素,以及从这些元素生成UUID的算 ...

  7. PCL读取PCD文件的数据

    1.pcd文件——rabbit.pcd 链接:https://pan.baidu.com/s/1v6mjPjwd7fIqUSjlIGTIGQ提取码:zspx 新建项目pcl rabbit.pcd 和p ...

  8. [转帖]Redis性能解析--Redis为什么那么快?

    Redis性能解析--Redis为什么那么快? https://www.cnblogs.com/xlecho/p/11832118.html echo编辑整理,欢迎转载,转载请声明文章来源.欢迎添加e ...

  9. Linux系统下Dubbo安装的详细教程

    Linux系统下Dubbo安装的详细教程 1.Dubbo的简介 Dubbo是 [1]  阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 [ ...

  10. Fastjson爆出重大漏洞,攻击者可使整个业务瘫痪

    360网络安全响应中心 https://cert.360.cn/warning/detail?id=82a509e4543433625d6fe4361b5802c9 报告编号:B6-2019-0905 ...