C# Directory类的操作

Directory类位于System.IO 命名空间。Directory类提供了在目录和子目录中进行创建移动和列举操作的静态方法。此外,你还可以访问和操作各种各样的目录属性,例如创建或最后一次修改时间以及Windows访问控制列表等。

System.IO.Directory类和System.DirectoryInfo类

主要提供关于目录的各种操作,使用时需要引用System.IO命名空间。下面通过程序实例来介绍其主要属性和方法。

方法/步骤

  1. 1

     目录创建方法:Directory.CreateDirectory

    该方法声明如下:

    public static DirectoryInfo CreateDirectory(string path);

    下面的代码演示在c:\tempuploads文件夹下创建名为NewDirectory的目录。

    private void MakeDirectory()

    {

    Directory.CreateDirectory(@"c:\tempuploads\NewDirectoty");

    }

  2. 2

     目录属性设置方法:DirectoryInfo.Atttributes

    下面的代码设置c:\tempuploads\NewDirectory目录为只读、隐藏。与文件属性相同,目录属性也是使用FileAttributes来进行设置的。

    private void SetDirectory()

    {

    DirectoryInfo NewDirInfo = new DirectoryInfo(@"c:\tempuploads\NewDirectoty");

    NewDirInfo.Atttributes = FileAttributes.ReadOnly|FileAttributes.Hidden;

    }

  3. 3

     目录删除方法:Directory.Delete

    该方法声明如下:

    public static void Delete(string path,bool recursive);

    下面的代码可以将c:\tempuploads\BackUp目录删除。Delete方法的第二个参数为bool类型,它可以决定是否删除非空目录。如果该参数值为true,将删除整个目录,即使该目录下有文件或子目录;若为false,则仅当目录为空时才可删除。

    private void DeleteDirectory()

    {

    Directory.Delete(@"c:\tempuploads\BackUp",true);

    }

  4. 4

     目录移动方法:Directory.Move

    该方法声明如下:

    public static void Move(string sourceDirName,string destDirName);

    下面的代码将目录c:\tempuploads\NewDirectory移动到c:\tempuploads\BackUp。

    private void MoveDirectory()

    {

    File.Move(@"c:\tempuploads\NewDirectory",@"c:\tempuploads\BackUp");

    }

  5. 5

     获取当前目录下的所有子目录方法:Directory.GetDirectories

    该方法声明如下:

    public static string[] GetDirectories(string path);

    下面的代码读出c:\tempuploads\目录下的所有子目录,并将其存储到字符串数组中。

    private void GetDirectory()

    {

    string [] Directorys;

    Directorys = Directory. GetDirectories (@"c:\tempuploads");

    }

  6. 6

     获取当前目录下的所有文件方法:Directory.GetFiles

    该方法声明如下:

    public static string[] GetFiles(string path;);

    下面的代码读出c:\tempuploads\目录下的所有文件,并将其存储到字符串数组中。

    private void GetFile()

    {

    string [] Files;

    Files = Directory. GetFiles (@"c:\tempuploads");

    }

  7. 7

     判断目录是否存在方法:Directory.Exist

    该方法声明如下:

    public static bool Exists

    (

    string path;

    );

    下面的代码判断是否存在c:\tempuploads\NewDirectory目录。若存在,先获取该目录下的子目录和文件,然后其移动,最后将移动后的目录删除。若不存在,则先创建该目录,然后将目录属性设为只读、隐藏

    if(File.Exists(@"c:\tempuploads\NewDirectory")) //判断目录是否存在

    {

    GetDirectory(); //获取子目录

    GetFile(); //获取文件

    MoveDirectory(); //移动目录

    DeleteDirectory(); //删除目录

    }

    else

    {

    MakeDirectory(); //生成目录

    SetDirectory(); //设置目录属性

    }

    注意:

    路径有3种方式,当前目录下的相对路径、当前工作盘的相对路径、绝对路径。以C:\Tmp\Book为例(假定当前工作目录为C:\Tmp)。“Book”,“\Tmp\Book”,“C:\Tmp\Book”都表示C:\Tmp\Book。

    另外,在C#中 “\”是特殊字符,要表示它的话需要使用“\\”。由于这种写法不方便,C#语言提供了@对其简化。只要在字符串前加上@即可直接使用“\”。所以上面的路径在C#中应该表示为“Book”,@“\Tmp\Book”,@“C:\Tmp\Book”。

时间: 2024-10-30 03:11:31

C# Directory类的操作的相关文章

快速上手之 C# 操作Directory类

考试的时候有这样一些简单的题: 1.把a文件从b文件夹移动到c文件夹 2.在a文件夹中创建b.lnk 3.删除a文件夹中的b ...... 这一系列的题,如何判断考生是否做对了呢? 一.归总题型 对于windows操作题,我们归总了一下分为: 1.new一个新的文件(excel,word,jpg),一个新的文件夹,一个新的lnk 2.delete 3.remove 4.read info 建立,删除,移动,读取信息,如果是判分,其实只需要做一点,那就是查询.new的话,就查询它是否新建了,del

C#文件夹操作之Directory类和DirectoryInfo类

问题的由来 怎么样使用 Cocos2d-x 快速开发游戏,方法很简单,你可以看看其自带的例程,或者从网上搜索教程,运行起第一个HelloWorld,然后在 HelloWorld 里面写相关逻辑代码,添加我们的层.精灵等 ~ 我们并不一定需要知道 Cocos2d-x 是如何运行或者在各种平台之上运行,也不用知道 Cocos2d-x 的游戏是如何运行起来的,它又是如何渲染界面的 ~~~ 两个入口 程序入口的概念是相对的,AppDelegate 作为跨平台程序入口,在这之上做了另一层的封装,封装了不同

[C#] 常用工具类——文件操作类

/// <para> FilesUpload:工具方法:ASP.NET上传文件的方法</para> /// <para> FileExists:返回文件是否存在</para> /// <para> IsImgFilename:判断文件名是否为浏览器可以直接显示的图片文件名</para> /// <para> CopyFiles:复制指定目录的所有文件</para> /// <para> MoveFi

Directory类

Directory类 是一个静态类,常用的地方为创建目录和目录管理. 一下来看看它提供的操作. 1.CreateDirectory 根据指定路径创建目录.有重载,允许一次过创建多个目录. 2.Delete  删除指定的目录.   有重载,指示目录有子目录的情况下,是否删除子目录. true则连同子目录一起删除.flase则不删除目录,并返回 一个异常.3.Exists   确定给定路径是否引用磁盘上的现有目录. 4.GetAccessControl   已重载. 返回某个目录的 Windows

C#之Directory类、DirectoryInfo类和Fileinfo,File以及FilesSystemInfo

一 两者的共同点 都用于典型的操作,如复制.移动.重命名.创建.打开.删除和追加到文件 默认情况下,将向所有用户授予对新文件的完全读写访问权限. 二 两者的区别 File类是静态类,由于所有的File方法都是静态的,所以如果只想执行一个操作,那么使用File方法的效率比使用相应的FileInfo实例方法可能更高. 所有的File方法都要求当前所操作的文件的路径.File类的静态方法对所有方法都执行安全检查.如果打算多次重用某个对象,可考虑改用FileInfo 的相应实例方法,因为并不总是需要安全

I/O Directory类

Directory类 Directory类位于System.IO 命名空间.Directory类提供了在目录和子目录中进行创建移动和列举操作的静态方法.此外,你还可以访问和操作各种各样的目录属性. 1.目录创建方法:public static DirectoryInfo CreateDirectory(string path); Directory.CreateDirectory(@"c:\tempuploads\NewDirectoty"); 2.目录删除方法:public stat

File类和Directory类

File类和Directory类分别用来对文件和各种目录进行操作,这两类可以被实例化,但不能被其他类集成. 1. File类(静态类) File类支持对文件的基本操作,它包括用于创建.复制.删除.移动和打开文件的静态方法,并协助创建FileStream对象. 2. Directory类(静态类) Directory类公开了用于创建.移动.枚举.删除目录和子目录的静态方法. 举例1:文件的创建 using System; using System.Collections.Generic; usin

C++String类关键操作简介

1.string 类的头文件 #include<string> using std::string; 2.string 类的构造函数 string s1; //默认的构造函数,s1为空串 string s2(s1); //将s2初始化为s1的一个副本,对s2的操作不会影响s1 string s3("value"); //将s3初始化为一个字符串字面值的副本 string s4(n,'c'); //将s4初始化为字符c的n个副本 3.string 对象的读写 cin >

java vm (二) 之 虚拟机启动对类的操作

虚拟机在启动中对类的操作 虚拟机加载类(classloader克拉斯楼的),类进行处理以后是字节码,虚拟机认识就可以做下面的事情了.从硬盘到内存的过程 链接 对类进行验证,类的头部用两个字节保存了,这个信息,详情找个专业的文档链接放到这里. 为类分配内存,给对应的变量附言默认值 int 给他 个0  Integer 给他个null…… 将特殊的字符进行解析,应该是跟Spring 对 @autowrite 的解析类似,有自己的套路,(找个合适的例子放到这里) 初始化变量赋予正确的值 比热 priv