谢谢

解决方案 »

  1.   

    参考:
    BOOL FindFolderFile(CString strFile, CStringList * pFileList)//查找文件函数
    {
    CFileFind FileFind;
    CString SearchTarget = strFile;// + "\\" +strFilter;
    if(SearchTarget.Right(1) != "\\")
    {
    SearchTarget += "\\";
    }

    SearchTarget += "*.*";
    BOOL res = FileFind.FindFile(SearchTarget);
    while(res)
    {
    res = FileFind.FindNextFile();
    /* if(FileFind.IsDirectory() && !FileFind.IsDots())
    {
    //如果是一个子目录,用递归继续往深一层找
    CString strPath = FileFind.GetFilePath();
    CString strTitle = FileFind.GetFileTitle();
    FindFolderFile(strPath, pFileList);
    }
    else if(!FileFind.IsDirectory() && !FileFind.IsDots())
    */ if(!FileFind.IsDirectory() && !FileFind.IsDots())
    {
    //显示当前访问的文件
    CString strExtName;
    CString strName;
    strName = FileFind.GetFileName();
    strExtName = strName.Right(strName.GetLength() - strName.Find('.')-1);
    // strExtName.MakeUpper();
    // if(!strExtName.CompareNoCase(strFilter))//扩展名正确
    // {
    CString strPath = FileFind.GetFilePath();
    pFileList->AddTail(strPath);
    // }
    }
    }
    FileFind.Close();//关闭
    return TRUE;
    }
      

  2.   

    FindFirstFile();//用".txt",就只找.txt文件。
    FindNextFile();
      

  3.   

    解开代码中注释掉的那段。调用:
    CString str = "TXT";
    CStringList FileList;
    FindFolderFile(str,&FileList);
    返回的链表就是所有文件的完整路径了,你可以OpenFile,然后Write等等
      

  4.   

    复制文件夹
    SHFILEOPSTRUCT  Op;
      
      char FromBuf[]="E:\\temp\0";
      char ToBuf[]="\\\\SINTEKSERVER\\个人文档\\陈 伟\0";;
      
      Op.hwnd = NULL;
      Op.wFunc = FO_COPY;
      Op.pFrom = FromBuf; 
      Op.pTo = ToBuf; 
      Op.fFlags = FOF_NOCONFIRMATION | FOF_RENAMEONCOLLISION ; 
      Op.fAnyOperationsAborted = FALSE; 
      Op.hNameMappings = NULL; 
      Op.lpszProgressTitle = NULL;
      
      if(SHFileOperation(&Op) == 0)
      MessageBox("复制完毕","提示",MB_OK|MB_ICONINFORMATION);