C program to find the size of a file in Linux

In this program we will get the size of the file using two methods:

  1. Using stat() function - Compatible for GCC, G++ Compilers
  2. Using fseek() and ftell() functions – Compatible for GCC, G++ and TURBOC Compilers

In the program, firstly we will create a file and in which we will write some characters (here A to Z characters has written, where total size of the file will be 26 bytes.).

File Size using C program in Linux and Windows

Get file size using stat() function

/*C program to find the size of a file in Linux.*/

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

/*function to get size of the file.*/
long int findSize(const char* file_name)
{
    struct stat st; /*declare stat variable*/

    /*get the size using stat()*/

    if (stat(file_name, &st) == 0)
        return (st.st_size);
    else
        return -1;
}

int main()
{
    char i;
    FILE* fp; /*to create file*/
    long int size = 0;

    /*Open file in write mode*/
    fp = fopen("temp.txt", "w");

    /*writing A to Z characters into file*/
    for (i = 'A'; i <= 'Z'; i++)
        fputc(i, fp);

    /*close the file*/
    fclose(fp);

    /*call function to get size*/
    size = findSize("temp.txt");

    if (size != -1)
        printf("File size is: %ld\n", size);
    else
        printf("There is some ERROR.\n");

    return 0;
}

Output:

File size is: 26

Get file size using fseek() and ftell() function

/*C program to find the size of a file in Linux and Windwos.*/

#include <stdio.h>

int main()
{
    FILE* fp; /*to create file*/
    long int size = 0;

    /*Open file in Read Mode*/
    fp = fopen("temp.txt", "r");

    /*Move file point at the end of file.*/
    fseek(fp, 0, SEEK_END);

    /*Get the current position of the file pointer.*/
    size = ftell(fp);

    if (size != -1)
        printf("File size is: %ld\n", size);
    else
        printf("There is some ERROR.\n");

    return 0;
}

Output:

File size is: 26

C Advance Programs »



Related Programs

ADVERTISEMENT
ADVERTISEMENT


Comments and Discussions!




Languages: » C » C++ » C++ STL » Java » Data Structure » C#.Net » Android » Kotlin » SQL
Web Technologies: » PHP » Python » JavaScript » CSS » Ajax » Node.js » Web programming/HTML
Solved programs: » C » C++ » DS » Java » C#
Aptitude que. & ans.: » C » C++ » Java » DBMS
Interview que. & ans.: » C » Embedded C » Java » SEO » HR
CS Subjects: » CS Basics » O.S. » Networks » DBMS » Embedded Systems » Cloud Computing
» Machine learning » CS Organizations » Linux » DOS
More: » Articles » Puzzles » News/Updates

© https://www.includehelp.com some rights reserved.