獲取文件擴展名C
回答
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("..."));
'dot = strrchr(filename,'。');','dot!= NULL'後暗示'* dot =='。''因此您的測試應該簡單'如果(點)'。 – 2011-03-15 09:07:00
我收到一個錯誤:'renamer.c:11:警告:不兼容隱式聲明的內置函數'strrchr'' – errorhandler 2011-03-15 09:08:57
'#include
您可以使用strrchr
函數搜索字符串中最後一次出現的字符,以找到最終的點。從那裏,你可以讀取字符串的其餘部分作爲擴展名。
查找與strrchr
最後的點,然後提前1焦炭
#include <stdio.h> /* printf */
#include <string.h> /* strrchr */
ext = strrchr(filename, '.');
if (!ext) {
/* no extension */
} else {
printf("extension is %s\n", ext + 1);
}
沒有必要複製它 - 您將返回一部分以原始字符串結尾的字符串,因此不需要進行任何修改。 – ThiefMaster 2011-03-15 09:11:14
複製刪除,謝謝 – pmg 2011-03-15 09:13:30
- 1. 獲取文件擴展名C錯誤
- 2. 獲取文件擴展名
- 3. 獲取文件大小,文件擴展名和下C/C++
- 4. 獲取除擴展名外沒有擴展名的文件名
- 5. 獲取文件的擴展名,但無法獲取文件名
- 6. 如何從沒有擴展名的文件名獲取文件擴展名?
- 7. Objective-C:獲取文件類型支持的文件擴展名
- 8. 獲取Php文件/圖像擴展名
- 9. 獲取文件的擴展名(編輯)
- 10. 從文件擴展名獲取ImageFormat
- 11. Primefaces FileUpload獲取文件擴展名
- 12. FileUpload獲取文件擴展名
- 13. Node.js獲取文件擴展名
- 14. 獲取文件擴展名 - jquery
- 15. 使用preg_replace獲取文件擴展名
- 16. 在java中獲取文件擴展名
- 17. 獲取擴展類的文件名
- 18. Nodejs獲取文件擴展名
- 19. Android - 如何獲取文件擴展名?
- 20. asp.net mvc HttpPostedFileBase獲取文件擴展名
- 21. Smarty獲取文件擴展名
- 22. PHP,獲取文件名沒有擴展
- 23. Angularjs如何獲取文件擴展名?
- 24. C#獲取所有沒有目錄擴展名的文件名
- 25. 在C#Stacktrace中獲取短文件名(帶擴展名)?
- 26. 文件擴展名和C#
- 27. 如何在C#Windows中獲取文件大小,文件名,文件擴展名?
- 28. 擴展RegExp以獲取文件擴展名
- 29. 獲取未知文件名的文件擴展名
- 30. 從URL和帶文件擴展名獲取文件名
[C語言入門文件擴展名]的可能的複製(http://stackoverflow.com/questions/3035225/getting-文件擴展名爲c語言) – nibot 2017-03-04 18:15:30