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