已知文件的路径,如何得到文件名??

解决方案 »

  1.   

    比如路径为:LPCTSTR path = "c:\\windows\\web\\girl.gif"
    如何才能取到girl.gif
      

  2.   

    TCHAR * FindFileSpec(const TCHAR *lpPath)
    {
      TCHAR *lpFileSpec;
      for (lpFileSpec = lpPath; *lpPath; lpPath = CharNext(lpPath)) 
     {    if (((lpPath[0] == _T('\\')) ||
     (lpPath[0] == _T('/'))  ||
     (lpPath[0] == _T(':'))) &&
    ((lpPath[1] != _T('\0')) &&
     (lpPath[1] != _T('\\')) &&
     (lpPath[1] != _T('/')))) {      lpFileSpec = lpPath + 1;
        }
      }  return lpFileSpec;
    }
      

  3.   

    函数:
    Public Function GetFileName(PathName As String)
    Dim Pos As Integer
    Dim PosBak As Integer
    Pos = InStr(1, PathName, "\\")
    Do While Pos > 0
      PosBak = Pos
      Pos = InStr(Pos + 1, PathName, "\\")
    Loop
    If PosBak > 0 Then
      GetFileName = Right(PathName, Len(PathName) - PosBak - 1)
    Else
      GetFileName = "fuckyou"
    End If
    End Function使用:
    FileName=GetFileName("c:\\windows\\web\\girl.gif")
      

  4.   

    sorry,一时笔误,应该是:
    函数:
    Public Function GetFileName(PathName As String)
    Dim Pos As Integer
    Dim PosBak As Integer
    Pos = InStr(1, PathName, "\\")
    Do While Pos > 0
      PosBak = Pos
      Pos = InStr(Pos + 1, PathName, "\\")
    Loop
    If PosBak > 0 Then
      GetFileName = Right(PathName, Len(PathName) - PosBak - 1)
    Else
      GetFileName ="" 
    End If
    End Function使用:
    FileName=GetFileName("c:\\windows\\web\\girl.gif")
      

  5.   

    to csword(南宫诗剑): 用VB教他一个新学vc的朋友不合适吧,用c该是这样。
    比如路径为:LPCTSTR path = "c:\\windows\\web\\girl.gif"
    如何才能取到girl.gif
    LPTSTR pszFileName = strrchr( path, '\\' );
    if(!pszFileName )
    {
        //Not a file paht name
    }
    else
    {
       pszFileName += 1;
       //搞定,pszFileName就是经果了
    }