它们是等价的还是相互替代的?它们中有没有被弃用的?如果有,是哪一个?建议在ASP.NET web应用程序中使用哪种方法?我的目标是递归地提取特定目录中的所有文件。
发布于 2010-06-30 13:05:58
Directory是一个静态类,它提供了处理目录的静态方法。DirectoryInfo是一个类的实例,它提供有关特定目录的信息。例如,如果您想要有关C:\Temp的信息:
var dirInfo = new DirectoryInfo("C:\\Temp");
if (dirInfo.Exists) {
FileInfo[] files = dirInfo.GetFiles("*.*", SearchOption.AllDirectories);
...
}如果您只想要字符串形式的名称,那么使用目录的静态方法来避免创建DirectoryInfo实例可能会更快、更容易。
if (Directory.Exists("C:\\Temp")) {
string[] files = Directory.GetFiles("C:\\Temp", "*.*", SearchOption.AllDirectories);
...
}简而言之,你使用哪一个并不重要,只要它能做你想要的。这两种方法都不推荐。
发布于 2010-06-30 13:09:56
Directory类是一个静态类,可以用来创建、移动、枚举目录和子目录。DirectoryInfo类的用途也与Directory类相同,后者的成员是实例成员,而不是Directory类。两者之间的主要区别在于我们何时可以使用这些类。当我们想要一次进行简单的文件夹操作时,可以使用Directory类。例如,您需要删除文件夹并退出。但是,DirectoryInfo类与一个文件夹相关联,它为您提供了可以在该文件夹上执行的所有操作。DirectoryInfo类在实例化时接受路径作为参数,并为您提供有关文件夹的所有内容。你可以创建子目录,移动,枚举等。CODEDIGEST
还有一个重要的注意事项,如果您必须在目录上执行多个操作,则DirectoryInfo将具有性能优势,因为它不需要对每个操作都进行安全特权检查。
发布于 2010-07-02 13:12:44
目录
目录信息类
类的所有成员都是实例成员。
https://stackoverflow.com/questions/3146586
复制相似问题