• 文件夹信息类DirectoryInfo


    DirectoryInfo类与FileInfo类一个,是实例化类,DirectoryInfo类的功能与Directory的静态类一样主要用于管理文件夹操作,它与FileInfo类共享了许多相同的方法和属性,因为这两个类都有一个相同的抽象基类:FileSystemInfo。

    在Directory类中每个方法调用都需要进行安全性检查,已确认是否有权限执行这个方法。这对于频繁是的方法来说,需要损失一个性能,DirectoryInfo类在调用之前,已经完成了安全性检查工作,但是,使用前,必须先实例化DirectoryInfo类,所以,一般对于只执行一次或执行较少的方法用Directory类,而相对频繁反复的方法,则应考虑使用DirectoryInfo类

    下面用代码来比较Directory和DirectoryInfo两个类的区别

    const string sourcePath = @"D:\lichenDirectoryInfo";
                const string destPath = @"D:\lichenDirectoryInfo1";
                //使用构造函数DirevtoryInfo
                DirectoryInfo di = new DirectoryInfo(sourcePath);
                if (!di.Exists)
                {
                    di.Create();

                }
                //创建子目录SubDirectory
                di.CreateSubdirectory("SubDirectory");
                Console.WriteLine("{0}的信息为",di.FullName);//FullName 获取目录或文件的完整目录,这里是前者
                Console.WriteLine("父目录是{0}",di.Parent.FullName);
                Console.WriteLine("根目录{0}",di.Root.FullName);
                Console.WriteLine("属性{0}",di.Attributes.ToString());
                Console.WriteLine("建立时间{0}",di.CreationTime.ToString());
                Console.WriteLine("最后一次访问时间{0}",di.LastAccessTime.ToString());
                Console.WriteLine("获取最后一次写入时间{0}",di.LastWriteTime.ToString());
                Console.WriteLine("文件夹被移动");
                if (Directory.Exists(destPath))
                {
                    Directory.Delete(destPath, true);//这里的用的true是删除子文件和子目录

                }
                di.MoveTo(destPath);
                    Console.WriteLine("文件夹被被删除");
                if (Directory.Exists(di.FullName+ @"SubDirectory"));
                {
                Directory.Delete(di.FullName+@"SubDirectory");
                }
                di.Delete();

  • 相关阅读:
    CentOS6下OpenLDAP+PhpLdapAdmin基本安装及主从/主主高可用模式部署记录
    Curl运维命令
    kafka 基础知识梳理及集群环境部署记录
    RocketMQ 简单梳理 及 集群部署笔记
    Redis哨兵模式(sentinel)学习总结及部署记录(主从复制、读写分离、主从切换)
    Redis+Keepalived高可用环境部署记录
    Centos下Nodejs+npm环境-部署记录
    基于Ping和Telnet/NC的监控脚本案例分析
    linux dig 命令使用方法
    dnsjava usage
  • 原文地址:https://www.cnblogs.com/lichen396116416/p/1929052.html
Copyright © 2020-2023  润新知