VC中选择文件目录和打开文件对话框
来源:互联网 发布:js星空效果 编辑:程序博客网 时间:2024/04/28 06:02
在批量处理文件时常常用到,索性放BLOG里头。
void OnButtonOpen() {// TODO: Add your control notification handler code here/*CFileDialog cFlgDlg(TRUE,NULL,NULL,OFN_HIDEREADONLY |OFN_OVERWRITEPROMPT,NULL);cFlgDlg.m_ofn.lpstrInitialDir = _T("E:\\test\\");if(cFlgDlg.DoModal() == IDOK){SetDlgItemText(IDC_EDIT1,cFlgDlg.GetPathName());}*/BROWSEINFO bBowInfo;char szPathName[MAX_PATH];char szTitle[] = "选择文件目录";ZeroMemory(&bBowInfo, sizeof(BROWSEINFO));bBowInfo.hwndOwner = GetSafeHwnd();bBowInfo.pszDisplayName = szPathName;bBowInfo.lpszTitle = szTitle;bBowInfo.ulFlags = 0x0040 ; CString str;CString strDir; //选择的目录 LPITEMIDLIST lpList = SHBrowseForFolder(&bBowInfo);if(lpList == NULL){strDir= "";return;}SHGetPathFromIDList(lpList, str.GetBuffer(MAX_PATH * 2));str.ReleaseBuffer();if(str != "" && str.GetAt(str.GetLength() - 1) != '\\')str += "\\";strDir = str;SetDlgItemText(IDC_EDIT1,strDir);}
遍历文件子目录:
void FindALLFileFromPath(char * lpPath){char szFind[MAX_PATH];WIN32_FIND_DATA wFindData;CString sMsg;strcpy(szFind,lpPath);strcat(szFind,"*.*");HANDLE hFind = ::FindFirstFile(szFind,&wFindData);if(hFind == INVALID_HANDLE_VALUE)return;while(TRUE){if(wFindData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY){if(wFindData.cFileName[0] != '.'){strcpy(szFind,lpPath);strcat(szFind,wFindData.cFileName);//递归查找FindALLFileFromPath(szFind);}}else{//找到文件并进行相应的转换strcpy(szFind,lpPath);strcat(szFind,wFindData.cFileName);if(TranslateFileToAnsi(szFind)){sMsg.Format("文件%s转换成功!",wFindData.cFileName);m_ListMsg.AddString(sMsg);}//else{sMsg.Format("文件%s转换失败!",wFindData.cFileName);m_ListMsg.AddString(sMsg);}}if(!FindNextFile(hFind,&wFindData)){break;}}FindClose(hFind);}
- VC中选择文件目录和打开文件对话框
- VC中打开对话框选择文件和文件夹
- C#打开选择文件对话框和选择目录对话框
- VC 文件对话框 目录选择
- 打开文件对话框与目录选择对话框
- 打开文件对话框与目录选择对话框
- MFC 选择文件对话框/打开目录对话框
- MFC 选择文件对话框/打开目录对话框
- 打开文件对话框与目录选择对话框
- VC++中打开文件对话框和保存文件对话框
- VC文件目录选择对话框(任意目录)
- VC文件目录选择对话框(任意目录)
- 选择目录对话框和选择文件对话框
- 选择目录对话框和选择文件对话框
- 选择目录对话框和选择文件对话框
- 选择目录对话框和选择文件对话框
- 选择目录对话框和选择文件对话框
- 选择目录对话框和选择文件对话框
- Oracle 存储过程中的游标cursor使用传入参数
- android textview xml 属性设置
- Linux文本编辑器Vim/Vi
- SQL SERVER中partition的用法
- java基础--IO流之字节、字符和转换流
- VC中选择文件目录和打开文件对话框
- Vmware上安装Vxworks 5.5
- 给定查询的网页综合排名
- windows的定时任务设置
- VC++ 动态链接库 (DLL) 编程
- 布隆过滤器
- mac svn 删除.svn隐藏文件的命令
- SQL SERVER2005 数据库 的事务日志已满 查明无法重用日志中的空间的原因
- Android ContentProvider