VC 打开文件框选择文件
来源:互联网 发布:保定优化公司 编辑:程序博客网 时间:2024/06/07 00:23
VC中,选择文件的方法:
1. MFC下:
CFileDialog fDlg(TRUE, _T(".apk"), NULL,
OFN_HIDEREADONLY | OFN_FORCESHOWHIDDEN | OFN_PATHMUSTEXIST | OFN_ALLOWMULTISELECT,
_T("Apk Files(*.apk)|*.apk|All Files(*.*)|*.*||"));
INT_PTR nResponse = fDlg.DoModal();
if (nResponse == IDOK)
{
CString strPath;
POSITION m_Position = fDlg.GetStartPosition();
while(m_Position != NULL)
{
strPath = fDlg.GetNextPathName(m_Position);
}
}
2. 比较原始的,但很好用,使用API:
OPENFILENAME ofn = {0};
TCHAR lpstrFilename[MAX_PATH * 20] = {0};
ofn.lStructSize= sizeof(OPENFILENAME);
ofn.hwndOwner = NULL;
ofn.lpstrFilter= _T("Apk Files(*.apk)\0*.apk\0All Files(*.*)\0*.*\0\0");
ofn.lpstrFile = lpstrFilename;
ofn.nMaxFile = MAX_PATH * 20;
ofn.lpstrInitialDir = TEXT("C:\..."); //初始化一个路径
ofn.Flags = OFN_HIDEREADONLY | OFN_FORCESHOWHIDDEN | OFN_PATHMUSTEXIST | OFN_EXPLORER | OFN_ALLOWMULTISELECT;
if (GetOpenFileName(&ofn))
{
TCHAR szDir[MAX_PATH]= {0};
TCHAR szName[128]= {0};
TCHAR szPath[MAX_PATH]= {0};
TCHAR *pos = lpstrFilename;
if (0 == lpstrFilename[_tcslen(lpstrFilename) + 1])// 只有一个文件
{
_tcscpy_s(szPath, MAX_PATH, lpstrFilename);
}
else
{
_tcscpy_s(szDir, MAX_PATH, lpstrFilename);
_tcscat_s(szDir, MAX_PATH, _T("\\"));
do
{
pos = &pos[_tcslen(pos)] + 1;
if (0 == *pos)
break;
_tcscpy_s(szPath, MAX_PATH, szDir);
_tcscat_s(szPath, MAX_PATH, pos);
} while (1);
}
}
- VC 打开文件框选择文件
- 打开文件选择框
- VC打开文件对话框与保存文件路径选择对话框
- VC中选择文件目录和打开文件对话框
- VC++6.0选择打开文件命令时停止工作解决方法
- VC中打开对话框选择文件和文件夹
- 打开->选择文件对话框
- 打开选择文件对话框
- VC++打开文件
- VC打开磁盘文件
- vc 打开文件 过滤器
- VC 打开外部文件
- VC 打开文件对话框
- VC 打开文件
- VC 文件打开对话框
- VC 打开文件
- 打开会话框选择文件与选择文件夹
- 打开选择文件夹或文件
- jquery的图片效果和内容滑动及弹出插件
- 总算解决了QT的一个诡异问题
- sql使用cast进行数据类型转换
- java实现的二叉树(前序、中序、后序)递归和非递归遍历,包含层序遍历
- 哈希查找因何快?我们使用它需要付出什么代价
- VC 打开文件框选择文件
- 在C++中使用TinyXML2解析xml
- 一些CSS学习网站
- winform的DataGridView关键字高亮显示
- 常用排序算法的时间复杂度和空间复杂度
- 套接字I/O模型之WSAEventSelect
- 最近 由于项目需要被迫自己写一个 ajax gird 记录-1
- cocos2d-x VA_LIST的用法
- MFC控件使用