python和C语言从路径中获取文件名

python

#python
import os

file_name = os.path.basename(filepath)#带后缀的文件名(不含路径)

file_name_NoExtension = file_name.split(\'.\')[0]#不带后缀的文件名(此方法不适用于文件名含多个点号的文件)

extension_name = os.path.splitext(filepath)[-1]#后缀

 C语言:

#include<stdio.h>

#include<string.h>

char* get_name(char* path, int choice)

{

char pure_file_name[100],file_name[100],extension_name[100];

int i,j,flag = 0;

int len = strlen(path); //取字符串长度

////////////////////////获取后缀名 //////////////////

for(i=len-1; i>=0; i--)

if(path[i] == \'.\'){ //找到最后一个点号

strcpy(extension_name,&path[i+1]);//获取后缀名

break;

}

/////////////////////获取文件名(不含路径,含后缀)////////////////////////

for(i=len-1; i>=0; i--)

if(path[i] == \'\\\'){ //找到最后一个斜杠

strcpy(file_name,&path[i+1]);//获取文件名(不含路径,含后缀)

break;

}

printf("extension_name:%s\n",extension_name);

printf("file_name:%s\n",file_name);

/////////////////////////获取纯文件名(不含路径和后缀)////////////////////////////////

for(i=len-1; i>=0; i--){

if(path[i] == \'.\' && !flag){

j = i; //记录最后一个点号位置

flag = 1;

}

if(path[i] == \'\\\'){ //找到最后一个斜杠

strncpy(pure_file_name,path+i+1,j-i-1);//获取纯文件名(不含路径和后缀)

break;

}

}

printf("pure_file_name:%s\n",pure_file_name);

switch(choice){

case 1:

return file_name;//文件名(不含路径,含后缀)

case 2:

return pure_file_name;//纯文件名(不含路径和后缀)

case 3:

return extension_name;//后缀

default:

return "choice error!";

}

}

int main(){

char* get_name(char *path, int choice);

char* name = get_name("C:\\Users\\cjk\\desktop\\1.txt", 1);

printf("%s\n",name);

return 0;

}

 

以上是 python和C语言从路径中获取文件名 的全部内容, 来源链接: utcz.com/z/389160.html

回到顶部