make a file smaller in size in c code example

Example 1: c file size

If you use :

/** 
	Pay attention to return type! 
	ftell returns long, which can only be used for files under 2GB. 
**/
fseek(f, 0, SEEK_END); // seek to end of file
size = ftell(f); // get current file pointer
fseek(f, 0, SEEK_SET); // seek back to beginning of file

// If u want to get file of large size, use stat() instead
struct stat buf;
if(stat(filename, &buf) == -1){
   return -1;
}
return (ssize_t)buf.st_size;

Example 2: size of file in c

// C program to find the size of file 
#include <stdio.h> 

long int findSize(char file_name[]) 
{ 
	// opening the file in read mode 
	FILE* fp = fopen(file_name, "r"); 

	// checking if the file exist or not 
	if (fp == NULL) { 
		printf("File Not Found!\n"); 
		return -1; 
	} 

	fseek(fp, 0L, SEEK_END); 

	// calculating the size of the file 
	long int res = ftell(fp); 

	// closing the file 
	fclose(fp); 

	return res; 
} 

// Driver code 
int main() 
{ 
	char file_name[] = { "a.txt" }; 
	long int res = findSize(file_name); 
	if (res != -1) 
		printf("Size of the file is %ld bytes \n", res); 
	return 0; 
}

Tags:

C Example