C語(yǔ)言怎么獲取文件擴(kuò)展名

小億
270
2023-11-16 19:58:57

可以使用字符串操作函數(shù)來(lái)獲取C語(yǔ)言中的文件擴(kuò)展名。以下是一個(gè)示例代碼:

#include <stdio.h>
#include <string.h>

int main() {
    char filename[100] = "example.txt";
    char *extension;

    // 獲取文件擴(kuò)展名
    extension = strchr(filename, '.');
    
    if (extension != NULL) {
        printf("文件擴(kuò)展名是:%s\n", extension+1);
    } else {
        printf("該文件沒(méi)有擴(kuò)展名\n");
    }

    return 0;
}

在上述代碼中,首先定義一個(gè)字符串filename,它包含了文件名和擴(kuò)展名。然后使用strchr函數(shù)來(lái)查找字符串中的特定字符,這里是’.',它返回第一個(gè)匹配到的字符的指針。如果找到了擴(kuò)展名,將其指針賦給extension變量,然后使用printf函數(shù)輸出擴(kuò)展名。如果未找到擴(kuò)展名,則extension將為NULL,輸出提示信息。

注意:這個(gè)代碼假設(shè)文件名中只有一個(gè)’.‘字符,因此只能正確獲取最后一個(gè)’.‘之后的字符串作為擴(kuò)展名。如果文件名中有多個(gè)’.‘字符,或者文件名中沒(méi)有’.'字符,則需要額外的邏輯來(lái)處理這種情況。

0