Directory.GetDirectories 方法

来源:互联网 发布:python 批处理 编辑:程序博客网 时间:2024/06/04 00:38

返回指定目录中的子目录的名称(包括其路径)。

path

要搜索的目录的相对或绝对路径。此字符串不区分大小写。

Directory.GetDirectories(string)方法

// For Directory.GetFiles and Directory.GetDirectories

// For File.Exists, Directory.Exists

using System;

using System.IO;

using System.Collections;


public class RecursiveFileProcessor 

{

    public staticvoid Main(string[] args) 

    {

        foreach(string pathin args) 

        {

            if(File.Exists(path)) 

            {

                // This path is a file

                ProcessFile(path); 

            }               

            else if(Directory.Exists(path)) 

            {

                // This path is a directory

                ProcessDirectory(path);

            }

            else 

            {

                Console.WriteLine("{0} is not a valid file or directory.", path);

            }        

        }        

    }



    // Process all files in the directory passed in, recurse on any directories 

    // that are found, and process the files they contain.

    public static void ProcessDirectory(string targetDirectory) 

    {

        // Process the list of files found in the directory.

        string [] fileEntries = Directory.GetFiles(targetDirectory);

        foreach(string fileNamein fileEntries)

            ProcessFile(fileName);


        // Recurse into subdirectories of this directory.

        string [] subdirectoryEntries = Directory.GetDirectories(targetDirectory);

        foreach(string subdirectoryin subdirectoryEntries)

            ProcessDirectory(subdirectory);

    }


    // Insert logic for processing found files here.

    public static void ProcessFile(string path) 

    {

        Console.WriteLine("Processed file '{0}'.", path);   

    }

}

Directory.GetDirectories 方法 (String, String)

using System;

using System.IO;


class Test 

{

    public staticvoid Main() 

    {

        try 

        {

            // Only get subdirectories that begin with the letter "p."

            string[] dirs = Directory.GetDirectories(@"c:\","p*");

            Console.WriteLine("The number of directories starting with p is {0}.", dirs.Length);

            foreach (string dirin dirs) 

            {

                Console.WriteLine(dir);

            }

        } 

        catch (Exception e) 

        {

            Console.WriteLine("The process failed: {0}", e.ToString());

        }

    }

}


Directory.GetDirectories 方法 (String, String, SearchOption)

The following example counts the number of directories that begin with the specified letter in a path.Only the top-level directory is searched.


using System;

using System.IO;


class Test 

{

    public staticvoid Main() 

    {

        try 

        {

            string[] dirs = Directory.GetDirectories(@"c:\","p*", SearchOption.TopDirectoryOnly);

            Console.WriteLine("The number of directories starting with p is {0}.", dirs.Length);

            foreach (string dirin dirs) 

            {

                Console.WriteLine(dir);

            }

        } 

        catch (Exception e) 

        {

            Console.WriteLine("The process failed: {0}", e.ToString());

        }

    }

}



0 0