1、参考的博客:System.IO.Directory类和System.DirectoryInfo类(http://blog.sina.com.cn/s/blog_614f473101017du4.html);        //有些地方,有误


2、Directory 类:https://msdn.microsoft.com/zh-cn/library/system.io.directory.aspx


3、说明,上述参考的博客有一些有错误的地方,在下面的代码中做了改正;

目录与文件的区别:

  【1】目录就是文件夹的意思 ,在图形化界面下 叫作文件夹,文本界面下 叫目录;  

  【2】文件是鸡蛋,目录是放鸡蛋的筐!目录是dos下叫的,文件夹是windows下叫的。都是一样的东西;

  【3】目录下放文件,文件放到不同的目录中,路径是查找文件的目录结构

4、自己实践:

using System;
using System.Windows.Forms;
using System.IO; namespace Directory_use
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e) //生成目录
{
MakeDirectory();
} private void button2_Click(object sender, EventArgs e) //退出应用程序
{
Application.Exit();
} private void button3_Click(object sender, EventArgs e)
{
if(Directory.Exists(@"c:\temp00")) //判断目录是否存在
// if (File.Exists(@"c:\temp00\NewDirectory")) //判断文件是否存在
{ DeleteDirectory(); //删除目录
}
else
{
MakeDirectory(); //生成目录
//SetDirectory(); //设置目录属性
}
}
private void button4_Click(object sender, EventArgs e) //移动目录
{
if (Directory.Exists(@"c:\temp01\BackUp") == false) //判断目录是否存在
Directory.CreateDirectory(@"c:\temp01\BackUp");
//if (File.Exists(@"c:\temp00\NewDirectory")) //判断文件是否存在
if (Directory.Exists(@"c:\temp00\NewDirectory"))
{
File.Move(@"c:\temp00\NewDirectoty", @"c:\temp01\BackUp");//移动文件
Directory.Move(@"c:\temp00", @"c:\temp01\BackUp"); //移动目录
}
else
{
MakeDirectory(); //生成目录
//SetDirectory(); //设置目录属性
} } private void button5_Click(object sender, EventArgs e)
{
dataGridView1.DataSource = GetDirectory();
} private void GetFile() //获取文件
{
string[] Files;
Files = Directory.GetFiles(@"c:\temp00");
} private string[] GetDirectory() //获取子目录
{
string[] Directorys;
Directorys = Directory.GetDirectories(@"c:\temp00");
return Directorys;
} private void SetDirectory() //设置目录属性
{
DirectoryInfo NewDirInfo = new DirectoryInfo(@"c:\temp00\NewDirectoty");
NewDirInfo.Attributes = FileAttributes.ReadOnly | FileAttributes.Hidden;
} private void MakeDirectory() //生成目录
{
Directory.CreateDirectory(@"c:\temp00\NewDirectoty");
} private void DeleteDirectory() //删除目录
{
Directory.Delete(@"c:\temp00", true);
} }
}

【欢迎转载】

转载请表明出处: 乐学习

System.IO.Directory类的更多相关文章

  1. 详解C#中System.IO.File类和System.IO.FileInfo类的用法

    System.IO.File类和System.IO.FileInfo类主要提供有关文件的各种操作,在使用时需要引用System.IO命名空间.下面通过程序实例来介绍其主要属性和方法. (1) 文件打开 ...

  2. System.IO.File类和System.IO.FileInfo类

    1.System.IO.File类 ※文件create, copy,move,SetAttributes,open,exists ※由于File.Create方法默认向所有用户授予对新文件的完全读写. ...

  3. System.IO.Directory.Delete目录删除

    在程序运行的时候,如果直接获取一个目录路径,然后执行删除(包括子目录及文件): System.IO.Directory.Delete(path,true); 或者 System.IO.Director ...

  4. 【C#遗补】获取应用程序路径之System.IO.Directory.GetCurrentDirectory和System.Windows.Forms.Application.StartupPath的区别

    原文:[C#遗补]获取应用程序路径之System.IO.Directory.GetCurrentDirectory和System.Windows.Forms.Application.StartupPa ...

  5. System.IO.Directory.cs

    ylbtech-System.IO.Directory.cs 1.返回顶部 1. #region 程序集 mscorlib, Version=4.0.0.0, Culture=neutral, Pub ...

  6. System.IO.Path类

    System.IO.Path为路径的操作封装了很多很有的东西,利用该类提供的方法能够快速处理路径操作的问题.下面详细了解一下. 1.属性 属性太复杂了,反映什么系统平台的信息,看不懂,等以后看得懂了再 ...

  7. 在c#中过滤通过System.IO.Directory.GetDirectories 方法获取的是所有的子目录和文件中的系统隐藏的文件(夹)的方法

    //读取目录 下的所有非隐藏文件夹或文件 public List<FileItem> GetList(string path) { int i; string[] folders = Di ...

  8. C# Directory类的操作

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

  9. 【C# IO 操作】 Path 路径类 |Directory类 |DirectoryInfo 类|DriveInfo类|File类|FileInfo类|FileStream类

    Directory类 Directory类 是一个静态类,常用的地方为创建目录和目录管理. 一下来看看它提供的操作. 1.CreateDirectory 根据指定路径创建目录.有重载,允许一次过创建多 ...

随机推荐

  1. Android Hotpatch系列之-给release包打Patch

    在默认debug包里面,是不对class做混淆的,所以Patch编写相对简单,但是应用在发布的时候都是release包,会对代码做混淆,此时class name ,field name,method ...

  2. docker 命令汇总

    命令汇总 docker history fa5fa5为镜像id或者镜像名 docker export 30b >h.tar30b为容器id或者容器名# docker export angry_b ...

  3. Node.js热部署方式

    1. supervisor: 2. hotnode: 3. node-dev: 4. nodemon:

  4. windows环境下局域网内无法访问apache站点

    DocumentRoot "D:/wamp/www/" <Directory />     AllowOverride none     order deny,allo ...

  5. cl.exe命令方式编译cpp

    直接在命令行窗口调用cl编译cpp文件 往往不能通过. 主要原因是一些头文件及可执行文件未在环境变量中设置.可以通过执行VSVAR32.BAT批处理文件来设置环境变量,注意vs2005跟2008的放置 ...

  6. wdcp的安装扩展模块

    其实就是官方包里面的所有附加模块全部支持啦.~~是在官方的基础上修改的优化了每次都解压缩php源码包,按需解压缩使用方法如下wget http://git.oschina.net/loblog/mem ...

  7. Openstack Neutron L2 Population

    Why do we need it, whatever it is? VM unicast, multicast and broadcast traffic flow is detailed in m ...

  8. Geneve: Generic Network Virtualization Encapsulation

    Earlier this year, VMware, Microsoft, Red Hat and Intel published an IETF draft on Generic Network V ...

  9. IOCP之客户端及消息传递

    上篇说到IOCP的精简实现,这篇来讲IOCP客户端和消息传递 在ConnectEx代码之前,CreateIoCompletionPort的第三个参数,把socket句柄+0x01000000作为传递 ...

  10. 黄聪:jquery 校验中国身份证号码

    大陆18位身份证(第二代身份证) 身份号码是一组具有特征组合码,由十七位数字本体码和一位校验码组成. 排列顺序从左至右依次为:六位数字地区码,八位数字生日码,三位数字顺序码和一位数字校验码. 校验方法 ...