首页 > 编程语言 > 详细

c/c++中过滤文件路经 后缀

时间:2018-08-12 23:25:08      阅读:197      评论:0      收藏:0      [点我收藏+]
#给定一个字符串,比如char *str = /home/magic/DT/improved_trajectory/UCF-101/ApplyEyeMakeup/ApplyEyeMakeup_g01_c01.avi
//我们的任务是得到最后的文件名,而且去掉后缀.avi,然后加上.txt
string path = str;
int p = path.find_last_of("/");  
string path_temp = path.substr(p+1);  //得到path_temp = ×××××.avi
int q = path_temp.rfind(".avi");  //从后往前找
string path_txt = path_temp.substr(0, q) +".txt";    //得到ApplyEyeMakeup_g01_c01.txt


//另外,附上C的版本
char filename[100]="/home/magic/DT/improved_trajectory/UCF-101/ApplyEyeMakeup/ApplyEyeMakeup_g01_c01.avi";
char *extr=strrchr(filename,.);
if (extr)
{    
    *extr=\0;    
     extr++;
}
printf("name=%s\n", filename);
printf("extr-name=%s\n", extr);
return 0;

 

 

 

c/c++中过滤文件路经 后缀

原文:https://www.cnblogs.com/logo-88/p/9465384.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!