在C中获取文件扩展名
如何从C中的文件名中获取文件扩展名(如.tiff
)?
谢谢!
const char *get_filename_ext(const char *filename) { const char *dot = strrchr(filename, '.'); if(!dot || dot == filename) return ""; return dot + 1; } printf("%s\n", get_filename_ext("test.tiff")); printf("%s\n", get_filename_ext("test.blah.tiff")); printf("%s\n", get_filename_ext("test.")); printf("%s\n", get_filename_ext("test")); printf("%s\n", get_filename_ext("..."));
用strrchr
找到最后一个点,然后前进1个字符
#include /* printf */ #include /* strrchr */ ext = strrchr(filename, '.'); if (!ext) { /* no extension */ } else { printf("extension is %s\n", ext + 1); }
您可以使用strrchr
函数搜索字符串中最后一个字符,以查找最终的点。 从那里,您可以读取字符串的其余部分作为扩展名。