zoukankan      html  css  js  c++  java
  • VC 中如何从字符串中分离文件名与路径+路径操作

    #include "stdafx.h"
    #include "PathStringManager.h"

    CPathStringOper::CPathStringOper(void)
    {
    }

    CPathStringOper::~CPathStringOper(void)
    {
    }

    CPathStringOper::GetFolderPathFromFullPath(LPCTSTR lpszFullPath)
    {
    // 获取文件路径:
    // 注意不是“/”以结尾,因为使用过程中加上一个“/”容易,减去一个不容易
    CString m_strOriFileName(lpszFullPath);

    CString strPath;
    int n=m_strOriFileName.ReverseFind('//')+1;
    strPath=m_strOriFileName.Left(n);
    return strPath;
    }

    CPathStringOper::GetFileFullNameFromFullPath(LPCTSTR lpszFullPath)
    {
    // 获取文件名:
    CString m_strOriFileName(lpszFullPath);

    CString strPath;
    int n=m_strOriFileName.GetLength()-m_strOriFileName.ReverseFind('//')-1;
    strPath=m_strOriFileName.Right(n);

    return strPath;
    }

    CPathStringOper::GetFileExtNameFromFullPath(LPCTSTR lpszFullPath)
    {
    // 同理,获取文件后缀名则为:
    CString m_strOriFileName(lpszFullPath);

    CString strFileType;
    int n=m_strOriFileName.GetLength()-m_strOriFileName.ReverseFind('.')-1;
    strFileType=m_strOriFileName.Right(n);

    return strFileType;
    }

    >>> 后来发现Windows 本身就能,就提供API实现

    不过  GetFolderPathFromFullPath(LPCTSTR lpszFullPath),GetFileExtNameFromFullPath(LPCTSTR lpszFullPath) API没有

    Common Dialog Box Functions

    The following functions are used with common dialog boxes.

    The following functions are used with common dialog boxes.

    ChooseColor  
    ChooseFont  
    CommDlgExtendedError  
    FindText 
    GetFileTitle  
    GetOpenFileName  
    GetSaveFileName  
    PageSetupDlg  
    PrintDlg  
    PrintDlgEx  
    ReplaceText 

    short GetFileTitle(
    LPCTSTR lpszFile, // pointer to full path and filename for file
    LPTSTR lpszTitle, // pointer to buffer that receives filename
    WORD cbBuf // length of buffer
    );


    BOOL GetOpenFileName(
    LPOPENFILENAME lpofn // address of structure with initialization
    // data
    );




  • 相关阅读:
    从零开始通过webhooks实现前端自动化
    使用rem配置PC端自适应大屏
    Nuxt内导航栏的两种实现方式
    VueX中直接修改数据报错,修改一维数组,二维数组,报错的原因
    在mpvue或者Vue中使用VUEX
    小程序框架MpVue踩坑日记(二)
    小程序mpvue中动态切换echarts图表
    小程序踩坑之不同屏幕下动态改变translate值
    Koa2+MySQL+VUE+ElementIUI搭建简单的后台管理小系统
    小程序框架MpVue踩坑日记(一)
  • 原文地址:https://www.cnblogs.com/carl2380/p/2317366.html
Copyright © 2011-2022 走看看