zoukankan      html  css  js  c++  java
  • (转).NET的IO:Path、File、FileInfo、Directory、DirectoryInfo、DriveInfo、FileSystemWatcher

    image

    1.管理文件系统


    一般而言,应用程序都会有保存数据、检索数据的需求。

    1.1 使用 path 类来访问文件路径


    image

    【path常用的方法】:http://www.cnblogs.com/tangge/archive/2012/10/30/2746458.html#a3

    1.2 使用 File 和 FileInfo 类访问文件

    1.2.1 File 类

    image

    image

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    static void Main(string[] args)
    {
        string sourceFileName = @"F:a.txt"; //源文件
        string destFileName = @"c:a.txt"; //目标文件
        //如果源文件不存在
        if (!File.Exists(sourceFileName))
        {
            File.Create(sourceFileName).Close();
        }
        //如果目标文件存在,先删除
        if (File.Exists(destFileName))
        {
            File.Delete(destFileName);
        }
     
        File.Copy(sourceFileName, destFileName);
        File.Delete(sourceFileName);
    }

    重复记录

    image

    复制代码
    string sourceFileName = @"F:a.txt"; //源文件
                string destFileName = @"c:a.txt"; //目标文件
    
                StreamWriter sw = File.AppendText(destFileName);
                sw.WriteLine(string.Format("{0}复制完毕", DateTime.Now));
                sw.Flush();
                sw.Close();
    复制代码

    1.2.2 FileInfo 类

    image

    Length

    复制代码
    private static void Main(string[] args)
            {
                string path = @"E:中天IT视频DVD-ASP.NETDVD-张波.NETC1001IO详解——张波.NETC10011上次复习_作业讲解.avi";
                FileInfo fi = new FileInfo(path);
                Console.WriteLine(
                    string.Format("本文件为{0:#.00}M", fi.Length / (1024 * 1024)));
            }
    复制代码

    image

    1.3 使用Directory 和 DirectoryInfo 类访问目录

    1.3.1 Directory 类

    image

    复制代码
    string path = @"F:	taegwww";
                if (Directory.Exists(path))
                {
                    Directory.Delete(path);
                }
                else
                {
                    Directory.CreateDirectory(path);
                }
    复制代码

    image

    复制代码
    string path = @"F:	taeg";
    
                //GetFiles 检索文件列表
                string[] aa= Directory.GetFiles(path);
                foreach (var a in aa)
                {
                    Console.WriteLine(a);
                }
                
                Console.WriteLine("------------");
                //GetDirectories 检索文件夹列表
                foreach (var s in Directory.GetDirectories(path))
                {
                    Console.WriteLine(s);
                }
    
                Console.WriteLine("------------");
                //GetDirectories 检索文件夹和文件列表
                foreach (var s in Directory.GetFileSystemEntries(path))
                {
                    Console.WriteLine(s);
                }
    复制代码

    image

    1.3.2 DirectoryInfo 类

    image

    image

    1.4 使用 DriveInfo 类访问驱动器

    image

    image

    Console.WriteLine("驱动器{0},类型为{1},",dr.Name,dr.DriveType);
                    //if (dr.IsReady)
                    //{
                        Console.WriteLine("可用空间为{0}", dr.AvailableFreeSpace);
                    //}

    image

     

    Console.WriteLine("驱动器{0},类型为{1},", dr.Name, dr.DriveType);
                    if (dr.IsReady)//设备已经准备好
                    {
                        Console.WriteLine("	可用空间为{0}G", dr.AvailableFreeSpace/(1024*1024*1024)); //41G
                        Console.WriteLine("	分区格式为{0}
    ",dr.DriveFormat);   //NTFS           
                    }

    image

    1.5 FileSystemWatcher 类

    image

    image

    2.使用字节流

    3.管理应用程序数据

    4.高效操作字符串

  • 相关阅读:
    Kafka 文档用例
    Kafka 文档引言
    关于工作流核心选择
    IEEE浮点标准
    新项目的CQRS设计
    持续集成:CruiseControl.NET + VisualSVN.Server
    商城(一)
    Maven基础学习(一)—Maven入门
    Mybatis基础学习(五)—缓存
    Mybatis基础学习(四)—关系映射
  • 原文地址:https://www.cnblogs.com/souliid/p/5648741.html
Copyright © 2011-2022 走看看