溫馨提示×

c語言怎么判斷文件大小

小億
196
2023-12-26 10:29:49
欄目: 編程語言

在C語言中,我們可以使用fseekftell函數來判斷文件的大小。

首先,我們需要使用fopen函數打開文件,并將文件指針指向文件的末尾,然后使用ftell函數獲取文件指針當前的位置(即文件大?。?,最后使用fclose函數關閉文件。

以下是一個示例代碼:

#include <stdio.h>

int main() {
    FILE *file;
    long size;

    // 打開文件
    file = fopen("test.txt", "rb");
    if (file == NULL) {
        printf("無法打開文件\n");
        return 1;
    }

    // 定位到文件末尾
    fseek(file, 0, SEEK_END);

    // 獲取文件大小
    size = ftell(file);
    printf("文件大小為 %ld 字節\n", size);

    // 關閉文件
    fclose(file);

    return 0;
}

請注意,fseek函數的第二個參數是偏移量,表示從當前位置移動的字節數。在此示例中,我們將偏移量設置為0,表示從當前位置不移動。第三個參數SEEK_END表示從文件末尾開始計算偏移量。

另外,你也可以使用stat函數來獲取文件的大小。以下是一個使用stat函數的示例代碼:

#include <stdio.h>
#include <sys/stat.h>

int main() {
    struct stat st;
    long size;

    // 獲取文件狀態
    if (stat("test.txt", &st) != 0) {
        printf("無法獲取文件狀態\n");
        return 1;
    }

    // 獲取文件大小
    size = st.st_size;
    printf("文件大小為 %ld 字節\n", size);

    return 0;
}

在此示例中,我們首先定義了一個struct stat結構體變量st,然后使用stat函數獲取文件狀態,并將結果保存到st中。最后,我們可以通過訪問st.st_size來獲取文件的大小。請注意,此方法需要包含頭文件sys/stat.h。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女