[C/C++] 파일명에서 확장자만 추출하기-Extract file extension from filename
안녕하세요 JollyTree입니다 (•̀ᴗ•́)و
컴퓨터에는 실행파일, 문서 파일, 이미지 파일, 음악파일 등에 따라 .exe, .pptx, .xlsx, .hwp, .jpg, .gif, mp3 등 다양한 형태의 확장자가 존재합니다. 이번 포스팅은 "maincodes.exe", "365일 생활 패턴 분석.hwp", "2020발표자료.pptx" 등과 같은 전체 파일명에서 마침표(.)로 구분되는 .exe, .pptx, .xlsx, .gif 등 확장자만을 추출하는 예제입니다.
🔗 파일 확장자 추출 예제(Example):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
#include <stdio.h>
#include <string.h>
#define MAX_PATH 256
//파일 확장자 추출 함수
char* getExt(char* filename)
{
static char buf[MAX_PATH] = "";
bool ret = false;
char* ptr = NULL;
ptr = strrchr(filename, '.');
if (ptr == NULL)
return NULL;
strcpy(buf, ptr + 1);
return buf;
}
int main()
{
char filename1[256] = "maincodes.abcd";
char filename2[256] = "jollytree.xyz";
char filename3[256] = "maincodes.tistory.com.maincodes";
char* ptr = NULL;
ptr = getExt(filename1);
printf(" >> [%s] 파일의 확장자는 [%s]입니다.\n", filename1, ptr);
ptr = getExt(filename2);
printf(" >> [%s] 파일의 확장자는 [%s]입니다.\n", filename2, ptr);
ptr = getExt(filename3);
printf(" >> [%s] 파일의 확장자는 [%s]입니다.\n", filename3, ptr);
return 0;
}
|
cs |
🔗 실행결과(Output):
이상 JollyTree였습니다. (•̀ᴗ•́)و