• Directory文件夹


    1、Directory是对文件夹进行的操作。

     1             //CreateDirectory:创建一个新的文件夹
     2             //Delete:删除
     3             //Move:剪切
     4             //Exist()判断指定的文件夹是否存在
     5 
     6             //if (!Directory.Exists(@"C:UsersSpringRainDesktop
    ew"))
     7             //{
     8             //    Directory.CreateDirectory(@"C:UsersSpringRainDesktop
    ew");
     9             //}
    10 
    11             //Console.WriteLine("操作成功");
    12 
    13             //for (int i = 0; i < 100; i++)
    14             //{
    15             //    Directory.CreateDirectory(@"C:UsersSpringRainDesktop
    ew" + i);
    16             //}
    17 
    18             //Console.WriteLine("创建成功");
    19 
    20 
    21             //移动
    22 
    23             //Directory.Move(@"C:UsersSpringRainDesktop
    ew", @"C:UsersSpringRainDesktop
    ew2");
    24             //Console.WriteLine("移动成功");
    25             //Directory.Delete(@"C:UsersSpringRainDesktop
    ew2",true);
    26             //Console.WriteLine("删除成功");
    27             //Console.ReadKey();
    View Code

    2、获取某一路径下的文件夹和文件名

      string path = @"D:Dpanwangweizhong";
                DirectoryInfo di = new DirectoryInfo(path);
    
                #region 用实例化DirectoryInfo的方法来 获取文件名称(两种:有路径的,没有路径的)
                FileInfo[] fitems = di.GetFiles();//获取文件名
                foreach (FileInfo f in fitems)
                {
                    Console.WriteLine(f.FullName);//获取含有路径的文件全名(带后缀).如:D:Dpanwangweizhong新建文本文档.txt
                    Console.WriteLine(f.Name);//获取文件全名(带后缀)。如:新建文本文档.txt
                }
                #endregion
    
                Console.WriteLine("----------------");
    
                #region 用实例化DirectoryInfo的方法来 获取文件夹名称
                DirectoryInfo[] ditems=  di.GetDirectories();//获取文件夹
                foreach (DirectoryInfo d in ditems)
                {
                    Console.WriteLine(d.FullName);//带有路径的文件夹名称
                    Console.WriteLine(d.Name);//不带路径的文件夹名称
                }
                #endregion
                #region 用Directory.GetFiles()方法获取文件名
                Console.WriteLine("+++++++++++++++++");
                string[] nameitems = Directory.GetFiles(path,"*.*");
                foreach (string n in nameitems)
                {
                    Console.WriteLine(n);//获取含有路径的文件全名(带后缀).如:D:Dpanwangweizhong新建文本文档.txt
                    Console.WriteLine(Path.GetFileName(n));////获取文件全名(带后缀)。如:新建文本文档.txt
                }
                #endregion
    
                #region 用Directory.GetFiles()方法获取文件夹
                Console.WriteLine("******************");
                string[] diritems = Directory.GetDirectories(path, "*.*");
                foreach (string d in diritems)
                {
                    Console.WriteLine(d);//获取含有路径的文件全名(带后缀).如:D:Dpanwangweizhongdemo
                    Console.WriteLine(Path.GetFileName(d));////获取文件全名(带后缀)。如:demo
                }
                #endregion
    View Code

    3、利用递归获取某个文件夹下的所有文件 完整代码

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.IO;
    
    namespace ConsoleApp5
    {
        class Program
        {
            //建立集合,接收所有的文件名
            List<string> slist = new List<string>();
            static void Main(string[] args)
            {
    
                string path = @"D:aa";
                Program p = new Program();
                p.SelecrAllFile(path);
                foreach (string s in p.slist)
                {
                    Console.WriteLine(s);
                }
                p.slist.Clear();
                Console.ReadKey();
    
            }
          /// <summary>
          /// 利用递归,把某个文件下的所有文件名读取来
          /// </summary>
          /// <param name="path">路径</param>
            public void SelecrAllFile(string path)
            {
                DirectoryInfo di;
                try
                {
                     di= new DirectoryInfo(path);
                //获取该路径下的所有文件名称
                FileInfo[] fitems = di.GetFiles();
                    foreach (FileInfo f in fitems)
                        slist.Add(f.Name);   //获得文件名(不含路径),但是会有重名。f.FullName为含有路径的全名
                    DirectoryInfo[] diitems = di.GetDirectories();//获得所有的文件夹
                    foreach (DirectoryInfo d in diitems)
                        SelecrAllFile(d.FullName);
                }
                catch
                {
                    Console.WriteLine("路径填写错误");
                    return;
                }
            }
    
    
        }
    }
    View Code
  • 相关阅读:
    Go语言之函数基础
    Go语言之内置函数与包函数
    【LeetCode】1668.最大重复子字符串(三)
    [Python]编码规范性(四)——注释(属性、格式)
    【LeetCode】1929. 数组串联(2)
    [Python]编码规范性(三)——注释(类、接口、函数)
    [Python]编码规范性(五)——命名(包和模块、类、函数)
    [Python]序列为空的判定
    【LeetCode】27. 移除元素
    [Python]编码规范性(一)——排版(缩进、语句、空格)
  • 原文地址:https://www.cnblogs.com/wwz-wwz/p/6393447.html
Copyright © 2020-2023  润新知