zoukankan      html  css  js  c++  java
  • WTL CFileDialog选中多个文件并获取每个文件具体路径

    m_szFileName 是一个TCHAR 数组,用来保存选择的文件名。如果选择了多个文件,它的结构为: 路径第一个文件名第二个文件名第三个文件名 (表示结束)

     1 CSimpleArray<CString>     _arrayFilePath;//存放选中文件的具体目录
     2 const CString STR_FILE_EXTEND = _T("工程文件(*.zwqd)\*.zwqd\\");
    3 void CFileUploadShzwYjDlg::onBrowserBtnClicked() 4 { 5 CString strFileExtend = STR_FILE_EXTEND; 6 strFileExtend.Replace(_T('\'), _T('')); 7 8 CFileDialog fileDlg(TRUE, NULL, NULL,OFN_EXPLORER | OFN_HIDEREADONLY |OFN_ENABLESIZING 9 |OFN_NOCHANGEDIR | OFN_PATHMUSTEXIST | OFN_ALLOWMULTISELECT,strFileExtend); 10 fileDlg.m_ofn.lpstrTitle = _T("选择工程文件"); 11 if (fileDlg.DoModal() != IDOK) 12 return; 13 14 _arrayFilePath.RemoveAll(); 15 16 TCHAR* pBeginPos = fileDlg.m_szFileName; 17 CString strPath=pBeginPos; 18 19 /** 20 * 获取选中文件具体目录并存放起来 21 */ 22 if (strPath.Right(5) == _T(".zwqd"))//选中一个文件 23 { 24 _arrayFilePath.Add(strPath); 25 } 26 else//选中多个文件 27 {

           //核心代码
    28 while (1) 29 { 30 if (*pBeginPos == '') 31 { 32 if (*(++pBeginPos) == '') 33 break; 34 _arrayFilePath.Add(strPath+_T('\')+pBeginPos); 35 } 36 else 37 { 38 pBeginPos++; 39 } 40 }
    41 } 42 43 }
  • 相关阅读:
    POJ3094 UVALive3594 HDU2734 ZOJ2812 Quicksum【进制】
    UVALive5583 UVA562 Dividing coins
    POJ1979 HDU1312 Red and Black【DFS】
    POJ1979 HDU1312 Red and Black【DFS】
    POJ2386 Lake Counting【DFS】
    POJ2386 Lake Counting【DFS】
    HDU4394 Digital Square
    HDU4394 Digital Square
    UVA213 UVALive5152 Message Decoding
    UVA213 UVALive5152 Message Decoding
  • 原文地址:https://www.cnblogs.com/YLJ666/p/14653943.html
Copyright © 2011-2022 走看看