- 浏览: 78732 次
文章分类
- 全部博客 (48)
- AOP (0)
- ASP.NET (1)
- C# (0)
- Community Server (0)
- Database (0)
- Design Pattern (3)
- JAVA (1)
- JavaScript (1)
- Linux (1)
- O/R Mapping (0)
- OO (3)
- SQL Server (1)
- VB.NET (0)
- Visual Studio 2005 (2)
- Windows (2)
- WPF (0)
- XML/XSLT (0)
- 常用工具类 (0)
- 人生感悟 (0)
- 算法 (0)
- 转载 (5)
- [网站分类]1.首页原创精华.NET区(包含架构设计、设计模式)(对首页文章的要求:原创、高质量、经过认真思考并精心写作) (3)
- [网站分类]2..NET新手区(用于发表不合适发表在首页的.NET技术文章,包括小经验、小技巧) (15)
- [网站分类]3.非技术区(技术之外的文章,但不要涉及任何政治内容) (2)
- [网站分类]4.其他技术区 (4)
- [网站分类]5.企业信息化 (0)
- [网站分类]6.读书心得区(技术书籍阅读心得、书籍推荐) (0)
- [网站分类]7.提问区(.NET技术方面的提问) (0)
- [网站分类]8.技术转载区(.NET技术文章转载, 请注明原文出处) (1)
- [网站分类]9.求职招聘区(个人求职、企业招聘) (0)
- [网站分类]Dottext区 (0)
- [网站分类]GIS技术 (0)
- [网站分类]IT英才专区(IT职场交流) (0)
- [网站分类]SharePoint (0)
- [网站分类]博客园.NET俱乐部(俱乐部组织与活动方面的文章) (0)
- [网站分类]软件发布区(发布自己开发的代码、软件) (0)
- [网站分类]网站管理区(网站管理方面的疑问、建议、意见, 寻求管理员帮助) (0)
- [网站分类]业界新闻 (0)
最新评论
-
xjw1987524:
这个问题我是弄啦很久,我也试过反编译,不知道为什么就是不成功; ...
支持中文参数的 jspSmartUpload
以前写过一个通过计算目录遍历所有文件和子目录的方法来获得某目录下的文件个数,结果发现速度极慢,远远不及系统本身目录属性里边显示的速度。
近来发现了一个效率更高的方法,只需遍历目录就能获得文件个数,现分享一下
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;
}
/**//// <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;
}
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;
}
发表评论
-
Visual Studio 2005 试用笔记
2005-11-06 21:36 937今天开始用上了 VS 2005 ... -
C#面向对象设计模式纵横谈(2):Singleton 单件(创建型模式) 笔记
2005-11-09 22:52 1315(很喜欢李建忠老师的这个讲座,可惜暂时没更多的了,继续关注 M ... -
利用视图管理器高效编写 SQL SELECT 语句
2006-02-19 13:27 955献给初学者,老鸟别扔砖头 编写 ... -
将Web站点下的绝对路径转换为虚拟路径
2006-05-07 12:48 1209很经常使用到的一个功能,但在在网上却一直没有找到相关的解决方法 ... -
比较高效地实现从两个不同数组中提取相同部分组成新的数组(只支持Int类型) [C#]
2006-05-13 22:17 4044有时候我们需要从两个不同数组中提取出相同的部分 ... -
基于 .NET 2.0 System.Net.Mail namespace 的邮件发送组件
2006-05-17 13:11 1887一个基于 .NET 2.0 System.Net.Mail n ... -
从 CCS 1.1 升级到 CS 2.0 所遇到的问题和部分解决方法
2006-06-16 12:58 827整理了一下,记录在这 ... -
.NET Enum The Next Level
2006-08-20 17:15 1172声明:本文内容出自:http://www.codeprojec ... -
C# 中实现随机时间的获取
2006-09-07 17:31 1368原理其实非常简单,取出两个时间差的秒数,再在0到该秒数 ... -
NHibernate 实体类中重写 Equals() 和 GetHashCode()
2006-09-17 17:08 1548在正常的对象操作中,当两个对象都是通过 new ... -
初识 db4o
2006-10-25 21:41 942今天早上收到 IBM developerWork ... -
Spring.Net AOP 学习之旅: 使用 Throws Advice 处理异常
2006-10-30 21:12 4339写在前头:本文示例和部分文字来自《Sprin ... -
.NET 1.1 下不使用 System.Web.Mail.SmtpMail 发送邮件的其它选择
2006-12-22 20:35 1246最近工作原因需要维护 ASP.NET 1.1 的程 ... -
.NET 中的 委托与事件
2006-12-27 10:10 1932一、什么是委托 ...
相关推荐
要获取指定目录(包括子目录)下的所有文件名和路径,可以使用`os.walk()`函数。以下是一个简单的例子: ```python import os def list_files(dir_path): for root, dirs, files in os.walk(dir_path): for file...
- `DirectoryInfo`对象用于获取源文件夹的信息,包括其中的所有文件和子目录。 - `Directory.CreateDirectory(destinationPath)`用于确保目标路径存在。 - `fsi is FileInfo`判断当前遍历的对象是否为文件,如果是,...
C#遍历指定文件夹中的所有文件是指使用C#语言编写程序来遍历指定文件夹中的所有文件和子目录。下面 将详细介绍如何使用C#来实现这一功能。 首先,需要使用DirectoryInfo类来表示文件夹。DirectoryInfo类提供了许多...
这个工具的主要功能是统计指定目录下的所有文件数量,不包括子目录中的文件和目录,并且能够列出所有不同文件类型的后缀名及其出现的次数。这个实用程序是用Visual Studio 2008开发的,为C#初学者和专业人士提供了一...
1. **获取文件列表**:使用`Directory.GetFiles()`或`DirectoryInfo.GetFiles()`方法获取指定目录下的所有文件。如果需要递归查找子目录中的文件,可以使用`Directory.GetDirectories()`和`DirectoryInfo....
在这个例子中,`os.walk(dir_path)`是一个生成器,它会返回三元组(root, dirs, files),其中root是当前目录的路径,dirs是一个包含当前目录下所有子目录的列表,files则是当前目录下所有非目录文件名的列表。...
3. **文件属性检查**:使用`FileInfo`类的方法来获取文件的属性,如`Name`(文件名),`Extension`(文件扩展名),`CreationTime`(创建时间),`Length`(文件大小)等。这些属性可用于决定文件的分类标准。 4. *...
这可以通过`Directory.GetFiles()`方法实现,它接受一个目录路径作为参数,返回该目录下所有文件的字符串数组。如果需要递归获取子目录中的文件,可以使用`Directory.GetDirectories()`和递归函数。 2. **遍历文件*...
例如,`GetDirectories()`方法用于获取指定路径下的所有子目录,`GetFiles()`则用于获取指定目录中的所有文件。 2. **DirectoryInfo类**:`DirectoryInfo`是对`Directory`类的扩展,它提供了一个对象模型,可以创建...
总结,这个任务的核心在于使用C#的文件系统操作类和递归算法,结合VS2008进行开发,实现根据文件名查找目录及其子目录下的所有匹配文件。这个过程中涉及到了文件系统API、编程逻辑设计和异常处理等多个方面,是C#...
如果需要递归遍历子目录,可以使用`GetFiles()`与`GetDirectories()`结合。 3. **重命名文件**:`FileInfo`类有一个`Rename()`方法,可以用于改变文件的名称。在重命名前,需要确保新名称不与现有文件冲突,否则会...
例如,`GetPostfixStr`方法用于获取文件的后缀名,它通过查找"."的位置并返回其后的字符串来实现。这是一个静态方法,可以直接通过类名调用: ```csharp string filename = "example.txt"; string postfix = ...
如果需要搜索子目录,可以传入`SearchOption.AllDirectories`参数。 - 找到匹配的文件或文件夹后,将它们添加到显示结果的控件中,如ListView的Items集合。 2. **菜单窗体设计**: - 菜单窗体通常包括一个“文件...
我们先获取当前目录下的所有文件并打印它们的文件名,然后获取子目录并递归调用`DisplayDirectoryTree`,每次增加一个层级。 为了显示`C:`盘的目录结构,只需调用这个函数传入`C:\`作为参数: ```csharp ...
`Directory.GetFiles()`方法可以用于获取指定目录下的所有文件,而`Directory.GetDirectories()`则能获取子目录,通过递归调用,我们可以遍历整个文件系统。 接下来,我们讨论如何引入多线程。在单线程环境下,全盘...
`DirectoryInfo`对象提供了`GetDirectories`和`GetFiles`方法,前者返回一个包含所有子目录的`DirectoryInfo`对象数组,后者返回一个包含所有文件的`FileInfo`对象数组。通过递归调用`GetFolder`方法,可以实现深度...
// 获取当前目录下所有子目录 string[] subDirectories = Directory.GetDirectories(directory); foreach (string subDir in subDirectories) { TraverseDirectory(subDir); // 递归遍历子目录 } } } ``` 这...
标题中的".net查询目录及其所有子目录源码(0515).rar"指的是一个使用.NET框架,可能是C#语言编写的程序,该程序能够遍历指定目录及其所有子目录,并进行某种操作或查询。这个压缩包可能包含了实现这一功能的源代码...
标题中的".net查询目录及其所有子目录源码2019"指的是在.NET框架下,使用C#编程语言实现的一个功能,即遍历指定目录及其所有子目录,并进行某些操作,比如查找特定文件、统计文件数量等。这个功能在很多实际应用场景...
例如,Python的`os.walk`函数就提供了一个方便的迭代器,它可以遍历指定路径下的所有文件和子目录,包括子目录中的文件。 6. 并行遍历: - 对于大型文件系统,为了提高效率,可以考虑使用并行或并发遍历。这通常...