CC++编程遍历文件夹,统计当前文件个数,输出文件名

CC++编程遍历文件夹,统计当前文件个数,输出文件名,第1张

这个要正对不同的 *** 作系统,不同的 *** 作系统,文件节点的存放方式不一样,读取的方式就不一样了。

可以利用for循环,像Linux

dir=opendir

(dirname)打开文件夹,返回目录指针,dp=readdir(dir)利用读目团咐录,返回一行行读取目录的文件结构体指针,指针中存的有文件属性,是文件,还是文件夹。

通过判链或好断是文件或棚铅者文件夹:

如果是文件,就就输出文件名dp->name

否则,就是一个文件夹

继续dir1=opendir(dp->name),dp1=readdir(dir1)..

一直循环到判断不到目录了。

windows应该也有类似的函数吧,这个我就么有用过了,你找找。

#include<戚悔档前缺stdio.h>

#include<高乱stdlib.h>

int main(void)

{

system("dir“)

return 0

}

文件的 *** 作步骤:

#include <stdio.h> #include <stdlib.h> int main()

{

FILE *fp

int i, d

fp=fopen("data.txt","w")

if(fp==NULL)

{

printf("File cannot open! " )

exit(0)

}

for(i=0i<10i++)

{

scanf("%d", &毕隐乱d)

fprintf(fp,"%d\t", d)

}

fclose(fp)

return 0

}  

格式化输出:

#include <stdio.h> #include <stdlib.h> int main()

{

FILE *fp

int i, No

float salary

fp=fopen("data.csv","w")

if(fp==NULL)

{

printf("File cannot open! " )

exit(0)

}

//输入5名员工携宏的工号,并保存到文件中

for(i=0i<5i++)

{

scanf("%d %f", &No, &salary)

fprintf(fp,"%d, %.2f\n", No, salary)

}

fclose(fp)

return 0

}  

扩展资料:

从文件中读取字符:

#include <stdio.h> #include <stdlib.h> int main()

{

FILE *fp

char c

if ((fp=fopen( "data.dat" , "r" ))==NULL)

{

printf("File cannot open!")

exit(0)

}

while((c=fgetc(fp))!=EOF)

putchar(c)

fclose(fp)

return 0

}  

参考资料:

百度百科手档-C语言


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12219104.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存