VC中分割文件路径的分割类

简介:
/* *********************************************************************
* Copyright (C) 2007 - All Rights Reserved
*
* File:            SplitPath.h
* Description:       进行文件路径字符串分割
*     
* Authors:         yanglinbo, 
* Revisions:       See bottom of file.

**********************************************************************
*/

#ifndef __SplitPath_H__
#define  __SplitPath_H__

class  CSplitPath
{
public :
    CSplitPath( LPCTSTR lpszPath 
=  NULL )
    {
        memset( path_buffer, 
0 sizeof ( path_buffer ) );
        memset( drive, 
0 sizeof ( drive ) );
        memset( dir, 
0 sizeof ( dir ) );
        memset( fname, 
0 sizeof ( fname ) );
        memset( ext, 
0 sizeof ( ext ) );

        
if  ( lpszPath ) Split( lpszPath );
    }

    
//  进行分割
    BOOL    Split(LPCTSTR lpszPath )
    {
        
if  ( lpszPath  ==  NULL )  return  FALSE;

        _tcsncpy( path_buffer, lpszPath, 
sizeof ( path_buffer )  -   1  );
        _tsplitpath( path_buffer, drive, dir, fname, ext );

        
return  TRUE;
    }

    
//  获取全路径 :"C:\\Temp\\Foo.txt"
    CString GetFullPath(  void  ) {  return  path_buffer; }

    
//  获取驱动器盘符 :"C:"
    CString GetDrive(  void  ) {  return  drive; }

    
//  获取除去盘符文件名的路径 :"\\Temp\\"
    CString GetDirectory(  void  ) {  return  dir; }

    
//  获取文件名称除去扩展名 : "Foo"
    CString GetFileName(  void  ) {  return  fname; }

    
//  获取扩展名 :".txt"
    CString GetExtension(  void  ) {  return  ext; }

    
//  获取全文件名称 : "Foo.txt"
    CString GetFullFileName(  void  ) {  return   this -> GetFileName()  +   this -> GetExtension(); }

protected :
    TCHAR    path_buffer[_MAX_PATH];
    TCHAR    drive[_MAX_DRIVE];
    TCHAR    dir[_MAX_DIR];
    TCHAR    fname[_MAX_FNAME];
    TCHAR    ext[_MAX_EXT];
};

#endif
目录
相关文章
|
存储 算法 索引
RLE格式分割标注文件表示
RLE格式分割标注文件表示
975 0
|
SQL 大数据 C#
Excel公式 提取文件路径后缀
原文:Excel公式 提取文件路径后缀 我们在代码中获取一个文件路径的后缀,是一个很简单的事. 如C#中,可以通过new FileInfo(filePath).Extension,或者Path.GetExtension(filePath)获取。
1899 0
|
4月前
|
编解码 计算机视觉 异构计算
【CV大模型SAM(Segment-Anything)】如何一键分割图片中所有对象?并对不同分割对象进行保存?
【CV大模型SAM(Segment-Anything)】如何一键分割图片中所有对象?并对不同分割对象进行保存?
如何根据文件夹中文件,生成对应名字的图片,名称一样的路径,这里用到了变量,将集合定义在外面,字符串拼接,正则表达式截取.jpg文件
如何根据文件夹中文件,生成对应名字的图片,名称一样的路径,这里用到了变量,将集合定义在外面,字符串拼接,正则表达式截取.jpg文件
|
5月前
如何快速提取出一个文件里面全部指定类型的文件的全部路径
该文介绍了如何使用一个工具进行文件批量复制。工具可以从百度网盘(提取码:qwu2)或蓝奏云(提取码:2r1z)下载。打开工具后切换到第五模块,使用Ctrl+5快捷键进入文件批量复制功能。点击“搜索添加”,选择要搜索的文件夹(如PS文件夹),勾选搜索全部子文件,然后开始搜索。搜索完成后,会显示所有结果。
|
4月前
|
机器学习/深度学习 自然语言处理 算法
【CV大模型SAM(Segment-Anything)】真是太强大了,分割一切的SAM大模型使用方法:可通过不同的提示得到想要的分割目标
【CV大模型SAM(Segment-Anything)】真是太强大了,分割一切的SAM大模型使用方法:可通过不同的提示得到想要的分割目标
|
5月前
如何批量复制多个文件到多个目录中(提取匹配法)
该文介绍了一个工具的使用方法,用于将带有特定数字的文件或文件夹自动归类到相应数字命名的文件夹中。操作步骤包括:下载工具(链接在文中提供)、打开工具选择“文件批量复制”功能、设置匹配规则(如从文件名中提取数字)并预览效果,最后执行复制操作。通过示例展示了如何处理“-数字.png”格式的文件,以及如何过滤掉特定格式的图片。该工具适用于处理大量按规则命名的文件,提高整理效率。
|
5月前
|
存储 人工智能 资源调度
【windows批处理batch】.bat文件 字符串处理相关操作(字符串定义、分割、拼接、替换、切片、查找)
【windows批处理batch】.bat文件 字符串处理相关操作(字符串定义、分割、拼接、替换、切片、查找)
|
定位技术
ArcGIS:如何对Shapefile文件进行符号系统修改、标注、合并、分割、拓扑编辑等?
ArcGIS:如何对Shapefile文件进行符号系统修改、标注、合并、分割、拓扑编辑等?
471 0
|
人工智能 Python
Python工具:将文件夹下的视频按照帧数输出图片文件(含代码)
Python工具:将文件夹下的视频按照帧数输出图片文件(含代码)
142 0