C2008 获取文件名的 盘符、文件路径、扩展名

本文介绍如何使用VC2008中的_makepath_s和_splitpath_s函数来合成和解析文件路径,包括盘符、目录、文件名及扩展名的获取。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

 

 

 

VC2008 获取文件名的 盘符、文件路径、扩展名

#include "stdafx.h"

#include "stdlib.h"

int _tmain(int argc, _TCHAR* argv[])
{  

   char path_buffer[_MAX_PATH];
   char drive[_MAX_DRIVE];
   char dir[_MAX_DIR];
   char fname[_MAX_FNAME];
   char ext[_MAX_EXT];
   errno_t err;

   err = _makepath_s( path_buffer, _MAX_PATH, "Z", "//t1//t2//",
                      "test", ".1.txt" );
   if (err != 0)
   {
      printf("Error creating path. Error code %d./n", err);
      exit(1);
   }
   printf( "用 _makepath_s 合成的路径:/n %s/n/n", path_buffer );
   err = _splitpath_s( path_buffer,

                          drive,   _MAX_DRIVE,

                          dir,         _MAX_DIR,

                         fname,   _MAX_FNAME,

                        ext,         _MAX_EXT );
   if (err != 0)
   {
      printf("Error splitting the path. Error code %d./n", err);
      exit(1);
   }
   printf( "用_splitpath_s 从/n %s /n提取的路径信息:/n",path_buffer );
   printf( " 盘符 =   %s/n", drive );
   printf( " 目录 =   %s/n", dir );
   printf( " 文件名=   %s/n", fname );
   printf( " 扩展名=   %s/n", ext );


getchar();
return 0;
}

-- 结果 --

用 _makepath_s 合成的路径:
Z:/t1/t2/test.1.txt

用_splitpath_s 从
Z:/t1/t2/test.1.txt
提取的路径信息:
盘符 =   Z:
目录 =   /t1/t2/
文件名=   test.1
扩展名=   .txt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值