#include <stdio.h>
#include <sys/types.h>
#include <dirent.h>
#include <stdlib.h>
#include <string.h>
int total_size = 0;//目录下文件的总大小
int count_file = 0;//目录下文件的个数
int count_size(char *file_path)//获取一个文件的大小
{
int file_size = 0;
FILE *fp = fopen(file_path, "rb");
if(fp == NULL)
{
printf("file open error!\n");
exit(-1);
}
fseek(fp, 0, SEEK_END);
file_size = ftell(fp);
fseek(fp, 0, SEEK_SET);
fclose(fp);
return file_size;
}
int main(int argc,char *argv[])
{
char *dir = NULL;
int file_size;
dir = argv[1];
DIR *p = opendir(dir);
if(p == NULL)
{
printf("open dir error!\n");
return ;
}
struct dirent * pd;
while( pd = readdir(p))
{
if(pd == NULL)
{
printf("read dir error!\n");
return ;
}
if(pd->d_name[0] == '.') continue;
char path[255] = {0};//存储一个文件的完整路径,包括文件名
C语言实现的计算一个文件下的所有文件的总大小(还有BUG,如果文件夹下面还有文件家就有问题,等待更新)
最新推荐文章于 2023-02-13 17:41:11 发布