在用CFileDialog 在多选文件时,得到文件后,怎样得到每个文件的文件名与扩展名       POSITION pos = OpenAnyFile.GetStartPosition();
       while(pos != NULL)
      {
           CString strPathName = OpenAnyFile.GetNextPathName(pos);
      }现在得到的文件名,是包含绝对路径的文件名,但现在我只要  文件名+扩展名不需要绝对路径C:\xxx\ttt\zzz\123.mdb   现在只想得到123.mdb

解决方案 »

  1.   

    _splitpath or strrchr find  \
      

  2.   

    用_splitpath是最方便的Example/* MAKEPATH.C */#include <stdlib.h>
    #include <stdio.h>void main( void )
    {
       char path_buffer[_MAX_PATH];
       char drive[_MAX_DRIVE];
       char dir[_MAX_DIR];
       char fname[_MAX_FNAME];
       char ext[_MAX_EXT];   _makepath( path_buffer, "c", "\\sample\\crt\\", "makepath", "c" );
       printf( "Path created with _makepath: %s\n\n", path_buffer );
       _splitpath( path_buffer, drive, dir, fname, ext );
       printf( "Path extracted with _splitpath:\n" );
       printf( "  Drive: %s\n", drive );
       printf( "  Dir: %s\n", dir );
       printf( "  Filename: %s\n", fname );
       printf( "  Ext: %s\n", ext );
    }
    OutputPath created with _makepath: c:\sample\crt\makepath.cPath extracted with _splitpath:
      Drive: c:
      Dir: \sample\crt\
      Filename: makepath
      Ext: .c