如何编程实现MFC创建新文件夹

类似于保存文件的操作,如CFileDialogdialogFile(),点击新建文件夹,即可生成一个新的文件夹,请问如何编程... 类似于保存文件的操作,如CFileDialog dialogFile(),点击新建文件夹,即可生成一个新的文件夹,请问如何编程 展开
 我来答
bhtzu
2014-03-25 · TA获得超过1.1万个赞
知道大有可为答主
回答量:8088
采纳率:85%
帮助的人:4239万
展开全部
CString   strFolderPath="c:\\test"   
  //   判断路径是否存在   
  if   (!PathIsDirectory(m_strFolderPath)   )   
  {   
      CString   strMsg;   
      strMsg.Format   ("指定路径\"%s\"不存在,是否创建?",   m_strFolderPath);   
      if   (AfxMessageBox(strMsg,   MB_YESNO)   ==   IDYES)   
      {   
          if   (!CreateDirectory(m_strFolderPath,   NULL))//here
          {   
                strMsg.Format   ("创建路径\"%s\"失败!是否继续?",   m_strFolderPath);   
                if   (AfxMessageBox(strMsg,   MB_YESNO)   ==   IDYES)   
                      return;   
            }   
      }   
  }

其实就是一个函数:CreateDirectory

追问
我是希望实现类似于下载文件时设置保存目录的那种形式,找到想保存的目录,点击新建文件夹即可建立
追答
//选择目录对话框
    char szPath[MAX_PATH];     //存放选择的目录路径 
    CString str;
    ZeroMemory(szPath, sizeof(szPath));  
    BROWSEINFO bi;   
    bi.hwndOwner = m_hWnd;   
    bi.pidlRoot = NULL;   
    bi.pszDisplayName = szPath;   
    bi.lpszTitle = "请选择需要打包的目录:";   
    bi.ulFlags = 0;   
    bi.lpfn = NULL;   
    bi.lParam = 0;   
    bi.iImage = 0;   
    //弹出选择目录对话框
    LPITEMIDLIST lp = SHBrowseForFolder(&bi);  
    if(lp && SHGetPathFromIDList(lp, szPath))   
    {
        str.Format("选择的目录为 %s", szPath);
        AfxMessageBox(str);
        
    }
    else   
        AfxMessageBox("无效的目录,请重新选择");
day忘不掉的痛
2015-08-10 · 知道合伙人数码行家
day忘不掉的痛
知道合伙人数码行家
采纳数:62646 获赞数:223941
本人担任公司网络部总经理多年,有充足的网络经验、互联网相关知识和资讯。

向TA提问 私信TA
展开全部
代码如下:
GetModuleFileName( NULL, strPath.GetBuffer(MAX_PATH), MAX_PATH ); //NULL 返回应用程序的全路径 strPath.ReleaseBuffer(); //清空缓冲区 strPath = strPath.Left(strPath.ReverseFind(_T('\\'))); //获取整个路径
str = strPath + "\\"+ sDate + "-" + sTime; //文件夹名称
CString csSubString;
while(-1 != str.Find("\\"))
{
int nPos = str.Find("\\");
csSubString += str.Left(nPos + 1);
str = str.Right(str.GetLength() - nPos -1);
CreateDirectory(csSubString,NULL);
}
csSubString += str;
CreateDirectory(csSubString,NULL); //创建子目录
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式