当你拿到一个文件路径的字符串(比如这种:“C:\Windows\notepad.exe”),然后你应该如何处理才能快速获取到它的盘符、文件夹、文件名和文件扩展名呢?(比如你分别获取到“C:”、“\Windows\”、“notepad”、“exe”四个字符串)
当然是使用_splitpath函数了。
_splitpath函数原型:
void _splitpath(const char*path,char*drive,char*dir,char*fname,char*ext);
以及对应的安全版的版本_splitpath_s的原型:
errno_t _splitpath_s(const char*path,char*drive,size_t drivesize,char*dir,size_t dirsize,char*fname,size_t fnamesize,char*ext,size_t extsize);
这个函数属于C语言运行库,使用前需要包含stdlib.h。
除了这个函数,还有一个反过来的函数(根据你给定的盘符、文件夹、文件名、文件扩展名制造一个文件路径出来),那就是_makepath。它的原型如下:
void _makepath(char*path,const char*drive,const char*dir,const char*fname,const char*ext);
以及对应的安全版的版本_makepath_s的原型:
void _makepath_s(char*path,size_t SizeInWords,const char*drive,const char*dir,const char*fname,const char*ext);
本文介绍如何使用_splitpath和_makepath函数来解析和构建文件路径。通过_splitpath可以轻松获取文件的盘符、目录、文件名及扩展名;而_makepath则可以根据这些组件重建完整的文件路径。
2827

被折叠的 条评论
为什么被折叠?



