zoukankan
html css js c++ java
获取某目录下的所有文件(包括子目录下文件)的数量(C#)
以前写过一个通过计算目录遍历所有文件和子目录的方法来获得某目录下的文件个数,结果发现速度极慢,远远不及系统本身目录属性里边显示的速度。
int
fileNum
=
0
;
/**/
///
<summary>
///
获取某目录下的所有文件(包括子目录下文件)的数量
///
</summary>
///
<param name="srcPath"></param>
///
<returns></returns>
public
int
GetFileNum(
string
srcPath)
{
try
{
//
得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组
string
[] fileList
=
System.IO.Directory.GetFileSystemEntries(srcPath);
//
遍历所有的文件和目录
foreach
(
string
file
in
fileList)
{
//
先当作目录处理如果存在这个目录就重新调用GetFileNum(string srcPath)
if
(System.IO.Directory.Exists(file))
GetFileNum(file);
else
fileNum
++
;
}
}
catch
(Exception e)
{
MessageBox.Show (e.ToString());
}
return
fileNum;
}
近来发现了一个效率更高的方法,只需遍历目录就能获得文件个数,现分享一下
System.IO.DirectoryInfo dirInfo
=
new
System.IO.DirectoryInfo(dirPath);
public
static
int
GetFilesCount(System.IO.DirectoryInfo dirInfo)
{
int
totalFile
=
0
;
totalFile
+=
dirInfo.GetFiles().Length;
foreach
(System.IO.DirectoryInfo subdir
in
dirInfo.GetDirectories())
{
totalFile
+=
GetFilesCount(subdir);
}
return
totalFile;
}
查看全文
相关阅读:
Linux-OpenSUSE折腾-1(Qt安装,Chrome安装)
Qt HUD(平显)演示程序绿色版
你所不知道的按位运算
Linux-Shell脚本编程-学习-8-函数
Linux-Shell脚本编程-学习-7-总结前面开启后面的学习
Linux-Shell脚本编程-学习-6-Shell编程-使用结构化命令-文件比较-case编程
Linux-Shell脚本编程-学习-5-Shell编程-使用结构化命令-if-then-else-elif
Linux-Shell脚本编程-学习-4-Shell编程-操作数字-加减乘除计算
Linux-Shell脚本编程-学习-3-Shell编程-shell脚本基本格式
selenium 总结篇,常见方法和页面元素的操作
原文地址:https://www.cnblogs.com/yyw84/p/269033.html
最新文章
《程序员修炼之道:从小工到专家》阅读笔记一
《程序员修炼之道:从小工到专家》阅读笔记三
《程序员修炼之道:从小工到专家》阅读笔记二
大二第二学期周学习进度总结(四)
Java课程课后作业190315之最大连续子数组(二维数组版)
大二第二学期周学习进度总结(三)
大二第二学期周学习进度总结(二)
Java课程课后作业190315之从文档中读取随机数并得到最大连续子数组
Java课程课后作业之19学期之第一周博客作业
HDU String painter
热门文章
HDU Catch (二分图判断奇环+并查集判断联通)
二分图的一些结论
二分图求最大匹配
平行四边形优化
HDU XYZZY (SPFA最长路有向环+floyd判断连通性)
HDU Delay Constrained Maximum Capacity Path(最短路+二分)
7.28 C幸运数字
HDU 1598 find the most comfortable road(最小生成树)
NKOJ P3696 假期关楼 (并查集)
Linux-Qt Quick学习1-Hello world
Copyright © 2011-2022 走看看