DirectoryInfo类
DirectoryInfo类和Directory类之间的关系与FileInfo类和File类之间的关系十分类似。下面介绍一下DirectoryInfo类的常用属性。
DirectoryInfo类的常用属性及说明如表所示。
表 DirectoryInfo类的常用属性及说明
| 属性 | 说明 |
| Attributes | 设置当前 FileSystemInfo 的 FileAttributes |
| CreationTime | 设置当前 FileSystemInfo 对象的创建时间 |
| Exists | 获取指示目录是否存在的值 |
| FullName | 获取目录或文件的完整目录 |
| Parent | 获取指定子目录的父目录 |
| Name | 获取此 DirectoryInfo 实例的名称 |
下面对DirectoryInfo类中比较重要的属性进行详细介绍。
(1)CreationTime 属性
设置当前 FileSystemInfo 对象的创建时间。
语法:
public DateTime CreationTime { get; set; }
属性值:当前 FileSystemInfo 对象的创建日期和时间。
例如,获得F:\test\0000\目录下文件夹AA的创建日期和时间,首先将DirectoryInfo实例化,然后通过CreationTime属性得到此文件夹的创建日期和时间。代码如下所示:
string Paths = @"F:\test\0000\AA";
DirectoryInfo di = new DirectoryInfo(Paths);// 将DirectoryInfo实例化
string name = di.CreationTime.ToString();//通过CreationTime属性得到此文件夹的创建日期和时间
Label1.Text = "文件夹创建时间:"+name;
(2)Exists属性
判断指定的文件夹是否存在。
语法:
public override bool Exists { get; }
属性值:如果目录存在,则为 True;否则为 False。
例如,判断F:\test\0000\目录下是否存在名为ls的文件夹,首先要将DirectoryInfo实例化,然后通过Exists属性判断此文件夹是否存在,如果文件夹存在,返回值为True,否则为False。代码如下所示:
string Paths = @"F:\test\0000\AA";
DirectoryInfo di = new DirectoryInfo(Paths);
if (di.Exists)
{
Page.RegisterStartupScript("","<script>alert('该文件夹已经存在')</script>");
}
DirectoryInfo类的常用方法及说明如表所示。
表 DirectoryInfo类的常用方法及说明
| 方法 | 说明 |
| Create | 创建目录 |
| CreateObjRef | 创建一个对象,该对象包含生成用于与远程对象进行通信的代理所需的全部相关信息 |
| CreateSubdirectory | 在指定路径中创建一个或多个子目录。指定路径可以是相对于 DirectoryInfo 类的此实例的路径 |
| Delete | 从路径中删除 DirectoryInfo 及其内容 |
| Equals | 确定两个 Object 实例是否相等 |
| GetAccessControl | 获取当前目录的访问控制列表 (ACL) 项 |
| GetDirectories | 返回当前目录的子目录 |
| GetFiles | 返回当前目录的文件列表 |
| GetFileSystemInfos | 检索表示当前目录的文件和子目录的强类型 FileSystemInfo 对象的数组 |
| GetHashCode | 用作特定类型的哈希函数。GetHashCode 适合在哈希算法和数据结构(如哈希表)中使用 |
| GetLifetimeService | 检索控制此实例的生存期策略的当前生存期服务对象 |
| GetObjectData | 设置带有文件名和附加异常信息的 SerializationInfo 对象 |
| GetType | 获取当前实例的 Type |
| InitializeLifetimeService | 获取控制此实例的生存期策略的生存期服务对象 |
| MoveTo | 将 DirectoryInfo 实例及其内容移动到新路径 |
| ReferenceEquals | 确定指定的 Object 实例是否是相同的实例 |
| Refresh | 刷新对象的状态 |
| SetAccessControl | 将 DirectorySecurity 对象所描述的访问控制列表 (ACL) 项应用于当前 DirectoryInfo 对象所描述的目录 |
| ToString | 返回用户所传递的原始路径 |
下面对DirectoryInfo类中比较重要的方法进行详细介绍。
(1)Create方法
此方法可以方便的创建目录。
语法:
public void Create ()
例如,在D盘下创建名为AA的文件夹,首先要将DirectoryInfo类实例化,然后判断是否存在同名的文件夹,如果不存在,则使用Create方法创建目录。代码如下所示:
string path = "D:\\AA";
DirectoryInfo di = new DirectoryInfo(path);
if (!di.Exists)
{
di.Create();
}
else
{
Response.Write("此文件夹已经存在!");
}
(2)GetFileSystemInfos方法
返回表示某个目录中所有文件和子目录的强类型FileSystemInfo项的数组。
语法:
public FileSystemInfo[] GetFileSystemInfos ()
返回值:
强类型 FileSystemInfo 项的数组。
(3)MoveTo方法
将指定的内容移动到新路径。
语法:
public void MoveTo (string destDirName)
参数:
destDirName :要将此目录移动到的目标位置的名称和路径,目标不能是另一个具有相同名称的磁盘卷或目录。
(4)Delete方法
删除指定的文件夹。
语法:
public override void Delete ()
例如,删除D盘下名为AA的文件夹,首先将DirectoryInfo类实例化,然后判断是否存在此文件夹,如果存在则使用Delete方法删除此文件夹。
string path = "D:\\AA";
DirectoryInfo di = new DirectoryInfo(path);
if (di.Exists)
{
di. Delete();
}
else
{
Response.Write("不存在此文件夹!");
}
DirectoryInfo类的更多相关文章
- System.IO中的File、FileInfo、Directory与DirectoryInfo类(实例讲解)
一.建立的文件夹(对这些文件进行以上四个类的操作): 父目录: 父目录的子目录以及父目录下的文件: 子目录下的文件: 二.效果图 三.代码实现 using System; using System.I ...
- c# DirectoryInfo类 详解
DirectoryInfo类和Directory类之间的关系与FileInfo类和File类之间的关系十分类似.下面介绍一下DirectoryInfo类的常用属性. DirectoryInfo类的常用 ...
- 文件及文件夹操作- File类、Directory 类、FileInfo 类、DirectoryInfo 类
文件及文件夹操作: C/S:WinForm可以操作客户端文件 Client ServerB/S:Brower Server 命名空间:using system .IO; 1. File类: 创建:Fi ...
- c# DirectoryInfo 类和 FileInfo 类
1.DirectoryInfo 类 DirectoryInfo 类派生自 FileSystemInfo 类.它提供了各种用于创建.移动.浏览目录和子目录的方法.该类不能被继承. 2.FileInfo ...
- FileInfo类和DirectoryInfo类
FileInfo类和DirectoryInfo类可以方便地对文件和文件夹进行操作. 1. FileInfo类(非静态类) FileInfo类和File类之间许多方法调用都是相同的,但是FileInfo ...
- 文件夹操作-DirectoryInfo类
DirectoryInfo类是一个密封类,它可以用来创建.移动.枚举目录和子目录.DirectoryInfo类包括4个属性,可以用来获取目录的名称.父目录等. DirectoryInfo类的属性表 属 ...
- C# 运用DirectoryInfo类和FileInfo类
DirectoryInfo类和FileInfo类的基类都是FileSystemInfo类,这个类是一个抽象类,也就是说你不可以实例化该类,只能通过继承产生其子类并实例化其子类.然而你却可以运用由该类定 ...
- File类、FileInfo类、Directory类、DirectoryInfo类
File类.Directory类,都是静态类,可以直接使用类名 FileInfo类.DirectoryInfo类,都是动态类,需要new对象,通过对象来操作 [文件的创建.复制.移动.删除]using ...
- Directory类和DirectoryInfo类
1.Directory类 Directory类公开了用于创建.移动.枚举.删除目录和子目录的静态方法 2.DirectoryInfo类 DirectoryInfo和Directory类的区别可以参看F ...
随机推荐
- iOS 并发编程指南
iOS Concurrency Programming Guide iOS 和 Mac OS 传统的并发编程模型是线程,不过线程模型伸缩性不强,而且编写正确的线程代码也不容易.Mac OS 和 iOS ...
- rem适配
//REM适配new function() { var _self = this; _self.width = 640; // 设置默认最大宽度 _self.fontSize = 100; // 默认 ...
- IEnumerable和IQueryable的区别
转自:http://www.cnblogs.com/fly_dragon/archive/2011/02/21/1959933.html IEnumerable接口 公开枚举器,该枚举器支持在指定类型 ...
- ASP.NET easyUI--datagrid 通过ajax请求ASP.NET后台数据的分页查询
js前台对datagrid的定义代码,如下 mygrid = $('#mytable').datagrid({ fit: true, //自动大小 height: 'auto', rownumbers ...
- PHP 开放JSON格式接口实例
转化JSON文件 <?php function arrayRecursive(&$array, $function, $apply_to_keys_also = false) { ; ) ...
- Java集合 List,Set,Map
一.List:.有顺序以线性方式存储,可以存放重复对象 线程安全方法:List list = Collections.synchronizedList(new LinkedList(...)); ...
- canvas的代码封装
(function(window,document){ var cs2d = function(selector,options){ return new cs2d.fn.init(selector, ...
- iOS 瀑布流的Demo
/** * 瀑布流Demo的主要代码,若想看完整的代码请到下面链接去下载 * * 链接: https://pan.baidu.com/s/1slByAHB 密码: r3q6 */ #import &l ...
- 微信消息回复C#
第一句话都会这么去写:程序猿就是苦逼,除了开发还要会写博文!哎,继上次写了C#成为微信开发者后,博友们积极查看本篇博客,在此深表感谢.顺便报一下上篇博客的网址:http://www.cnblogs.c ...
- j2ee Servlet、Filter、Listener
首先,JSP/Servlet规范中定义了Servlet.Filter.Listener这三种角色,并没有定义Interceptor这个角色,Interceptor是某些MVC框架中的角色,比如Stru ...