欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C語言獲取文件長度的方法

 更新時間:2023年10月25日 09:16:53   作者:暴風雨中的白楊  
這篇文章主要介紹了C語言獲取文件長度的相關知識,包括使用標準庫方法和使用Linux系統(tǒng)調(diào)用,本文通過實例代碼給大家介紹的非常詳細,需要的朋友可以參考下

C語言獲取文件長度

一、使用標準庫方法

#include <stdio.h>

long get_file_size(const char * filename ){
    long size = 0;
    FILE * fp = fopen(filename,"rb");
    if( fp == NULL ) {
        printf("open file %s failed\r\n",filename);
        return 0;
    }
    // 移動文件指針到文件末尾
    fseek(fp,0,SEEK_END);
    // 獲取文件長度
    size = ftell(fp);
    fclose(fp); fp = NULL;
    return size;
}

二、使用Linux系統(tǒng)調(diào)用

在Linux操作系統(tǒng)下,可以使用stat函數(shù)來獲取文件信息,其中st_size字段表示文件的長度。

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

long get_file_size(const char * filename ){
    struct stat st;
    // 獲取文件信息
    if( stat(filename,&st) == -1){
        printf("get file %s 's info failed\r\n",filename);
        return 0;
    }
    
    //S_ISLNK(st_mode):是否是一個連接
	//S_ISREG是否是一個常規(guī)文件
	//S_ISDIR是否是一個目錄
	//S_ISCHR是否是一個字符設備
	//S_ISBLK是否是一個塊設備
	//S_ISFIFO是否是一個FIFO文件
	//S_ISSOCK是否是一個SOCKET文件
    
    // 檢查文件類型
    if( !S_ISREG(st.st_mode)){
        printf("%s 不是一個常規(guī)文件\r\n",filename);
        return 0;
    }
    return st.st_size;
}

到此這篇關于C語言獲取文件長度的文章就介紹到這了,更多相關C語言文件長度內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 使用Matlab繪制七夕咕呱小青蛙

    使用Matlab繪制七夕咕呱小青蛙

    七夕節(jié)到了還不快給你的朋友安排上這只咕呱小青蛙?本文將用Matlab繪制一個可愛的咕呱小青蛙,感興趣的小伙伴可以動手嘗試一下
    2022-08-08
  • 詳解C++中遞增運算符重載的實現(xiàn)

    詳解C++中遞增運算符重載的實現(xiàn)

    本文主要詳解運算符重載里的遞增運算符重載;遞增和遞減原理是一樣的,這里就只分享遞增的重載;提到遞增遞減,我們都知道又前置和后置兩種方法, 那今天就詳解一下前置遞增和后置遞增的細節(jié),拿捏遞增運算符重載
    2022-06-06
  • Qt把文件夾從A移動到B的實現(xiàn)示例

    Qt把文件夾從A移動到B的實現(xiàn)示例

    本文主要介紹了Qt把文件夾從A移動到B的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2025-03-03
  • 基于字符串移位包含的問題詳解

    基于字符串移位包含的問題詳解

    本篇文章是對字符串移位包含的問題的解決方法進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • C語言命令行參數(shù)的使用詳解

    C語言命令行參數(shù)的使用詳解

    本文主要介紹了C語言命令行參數(shù)的使用詳解,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • 從零開始的Socket編程學習

    從零開始的Socket編程學習

    我們每天打開瀏覽器瀏覽網(wǎng)頁時,瀏覽器的進程怎么與web服務器通信的?QQ進程怎么與服務器或你好友所在的QQ進程通信?這些都得靠socket?那什么是socket?socket的類型有哪些?還有socket的基本函數(shù),下面小編帶大家了解下
    2019-05-05
  • C語言實現(xiàn)二叉樹的示例詳解

    C語言實現(xiàn)二叉樹的示例詳解

    這篇文章主要為大家詳細介紹了C語言中二叉樹的算法實現(xiàn)以及二叉樹的遍歷算法與應用,文中的示例代碼講解詳細,感興趣的小伙伴可以了解一下
    2023-06-06
  • Qt超時鎖屏的實現(xiàn)示例

    Qt超時鎖屏的實現(xiàn)示例

    本文主要介紹了Qt超時鎖屏的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • C語言實現(xiàn)文件讀寫功能流程

    C語言實現(xiàn)文件讀寫功能流程

    這篇文章主要介紹了C語言實現(xiàn)文件讀寫,文件是一段數(shù)據(jù)的集合,這些數(shù)據(jù)可以是有規(guī)則的,也可以是無序的集合。在stdio.h有一個非常重要的東西,文件指針,每個文件都會在內(nèi)存中開辟一塊空間,用于存放文件的相關信息
    2022-12-12
  • C++實現(xiàn)從輸入中讀取字符串

    C++實現(xiàn)從輸入中讀取字符串

    這篇文章主要介紹了C++實現(xiàn)從輸入中讀取字符串的實現(xiàn)思路和具體代碼,非常的簡單實用,有需要的小伙伴可以參考下
    2016-05-05

最新評論