From 5710ded614aad08408a65ea289b18582e8a6ed38 Mon Sep 17 00:00:00 2001 From: Japneet Kaur Bhatia <56752427+japneetbhatia@users.noreply.github.com> Date: Sat, 7 Nov 2020 21:02:26 +0530 Subject: [PATCH 1/2] Create sizeoffolder.c --- C/sizeofdirectory/sizeoffolder.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 C/sizeofdirectory/sizeoffolder.c diff --git a/C/sizeofdirectory/sizeoffolder.c b/C/sizeofdirectory/sizeoffolder.c new file mode 100644 index 00000000..2c0ce7e9 --- /dev/null +++ b/C/sizeofdirectory/sizeoffolder.c @@ -0,0 +1,27 @@ +#include +#include + +int main(void) +{ + struct dirent *de; // Pointer for directory + int ctr = 0; // variable to store size + DIR *dr = opendir("."); + + if (dr == NULL) //if directory not exist + { + printf("Can't open current directory" ); + return 0; + } + + while ((de = readdir(dr)) != NULL) //if directory exists and till the end of directory + { + FILE* fp = fopen(de->d_name, "r"); + fseek(fp, 0L, SEEK_END); + ctr = ctr + ftell(fp); // calculating the size of each file in folder + fclose(fp); + } + + printf("Directory Size : %d bytes", ctr); + closedir(dr); + return 0; +} From 793b90e266f3f813ccd4d6a50523768df26044a4 Mon Sep 17 00:00:00 2001 From: Japneet Kaur Bhatia <56752427+japneetbhatia@users.noreply.github.com> Date: Sat, 7 Nov 2020 21:02:59 +0530 Subject: [PATCH 2/2] Create README.md --- C/sizeofdirectory/README.md | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 C/sizeofdirectory/README.md diff --git a/C/sizeofdirectory/README.md b/C/sizeofdirectory/README.md new file mode 100644 index 00000000..03727cd3 --- /dev/null +++ b/C/sizeofdirectory/README.md @@ -0,0 +1,7 @@ +This C program scan the current directory and display total size in bytes + +Header file and function used + +The type DIR is defined in the header file + +The readdir() function returns a pointer to a structure representing the directory entry at the current position in the stream