怎么打开多个文件,并获得文件名

wilehorse 2003-10-17 03:37:40
用CFileDialog可以吗,怎么设置
...全文
135 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
wilehorse 2003-10-24
  • 打赏
  • 举报
回复
上述问题解决了
但是为什么文件名的顺序跟我选择的先后顺序是反的,怎么调整
wilehorse 2003-10-24
  • 打赏
  • 举报
回复
GetStartPosition、GetNextPathName返回的是第二个文件名,怎么获得第一个文件名啊
阿甘 2003-10-24
  • 打赏
  • 举报
回复
跟了半天cfiledialog,没有找到解决的办法

看来要想用这个类且要顺序处理文件的话,只能是得到所有文件名后再倒过来处理了
wilehorse 2003-10-24
  • 打赏
  • 举报
回复
没有办法吗,应该可以解决的
gothing 2003-10-24
  • 打赏
  • 举报
回复
如果一直都是反的话,那就按反的顺序打开这些文件就是了
Phourm 2003-10-17
  • 打赏
  • 举报
回复
OPENFILENAME ofn;
ZeroMemory(&ofn, sizeof(ofn));
ofn.lStructSize = sizeof(OPENFILENAME);
ofn.hwndOwner = GetSafeHwnd();
ofn.lpstrFile = new TCHAR[MAX_PATH * 500];
ofn.nMaxFile = MAX_PATH * 500;
ZeroMemory(ofn.lpstrFile, ofn.nMaxFile * sizeof(TCHAR));
ofn.lpstrFilter = "All Files\0*.*\0\0";
ofn.nFilterIndex = 0;
ofn.lpstrFileTitle = NULL;
ofn.nMaxFileTitle = 0;
ofn.lpstrInitialDir = NULL;
ofn.Flags = OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST | OFN_ALLOWMULTISELECT | OFN_EXPLORER | OFN_HIDEREADONLY;

// Display the Open dialog box.
CStringArray arFiles;//保存选中的文件在这个数组里
if (GetOpenFileName(&ofn))
{
LPCTSTR lpFile = ofn.lpstrFile;
if (lpFile[lstrlen(lpFile) + 1] == 0)//one file
{
lstrcpy(szOldDir, theApp.m_pFileSync->m_pICommon->GetFilePath(ofn.lpstrFile));

arFiles.Add(lpFile);
}
else
{
lstrcpy(szOldDir, ofn.lpstrFile);
lpFile += lstrlen(lpFile) + 1;//first file
while(lpFile[0] != 0)
{
CString strFilePath(ofn.lpstrFile);
strFilePath.TrimRight('\\');
strFilePath += CString("\\") + lpFile;

arFiles.Add(strFilePath);

lpFile += lstrlen(lpFile) + 1;//Next file
}
}
}

delete[] ofn.lpstrFile;
flagfly 2003-10-17
  • 打赏
  • 举报
回复
用类CFileFind
阿甘 2003-10-17
  • 打赏
  • 举报
回复
然后用GetStartPosition、GetNextPathName来取得文件名
阿甘 2003-10-17
  • 打赏
  • 举报
回复
初始化的时候设置OFN_ALLOWMULTISELECT

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧