如何用C语言取出文件的后缀

如何用C语言取出文件的后缀,第1张

你这是个啥意思呢?给春滚告一个文件名,备前然后给出这个文件名的后缀来?

那就从文件名最后开始判断到哪有"."不就行了~~

#include <stdio.h>

#include <string.h>

char *getPost(char *const filename)

{

char *post="NO RESULT"

int len,i

len = strlen(filename)

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

if(filename[i]=='.')

{

return filename+i+1

break

}

return post

}

void main()

{

char *filename1="abcd.efghi.jkl"

char *filename2="abcdefgh"

printf("The result: %s\n",getPost(filename1))

printf("The result: %s\n"扒明,getPost(filename2))

}

对于filename1,程序输出jkl

对于filename2,程序输出NO RESULT

一楼的方法输出时在后册哪缀前面有个点,而且对无咐纤后缀文件名后导州简码致程序错误。

char temp[4]

int len=strlen(argv[2])

char *p=argv[2]+len-1

while(*p!='.' &&p!=argv[2]) p--

if(p==argv[2]) temp[0]='\0'

else strcpy(temp,p+1)

最后temp中就是后缀。

这种方法对无后缀的文件名也有效。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12283148.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存