GetFileSystemEntries メソッド (String)
目次を折りたたむ
目次を展開する
この記事は機械翻訳されています。英語版の記事を表示するには、[英語] のチェック ボックスをオンにしてください。また、テキストにマウス ポインターを合わせると、ポップアップ ウィンドウに英語のテキストを表示することもできます。
翻訳
英語

Directory.GetFileSystemEntries メソッド (String)

 

指定したパス内のすべてのファイル名とサブディレクトリ名を返します。

名前空間:   System.IO
アセンブリ:  mscorlib (mscorlib.dll 内)

public static string[] GetFileSystemEntries(
	string path
)

パラメーター

path

検索するディレクトリの相対パスまたは絶対パス。この文字列の大文字と小文字は区別されません。

戻り値

Type: System.String[]

指定したディレクトリ内ファイル名またはサブディレクトリ名の配列。ファイルやサブディレクトリが見つからない場合は、空の配列。

Exception Condition
UnauthorizedAccessException

呼び出し元に、必要なアクセス許可がありません。

ArgumentException

path が、長さが 0 の文字列であるか、空白しか含んでいないか、または無効な文字を 1 つ以上含んでいます。無効な文字を照会するには、GetInvalidPathChars を使用します。

ArgumentNullException

pathnull です。

PathTooLongException

指定したパス、ファイル名、またはその両方がシステム定義の最大長を超えています。たとえば、Windows ベースのプラットフォームの場合、パスの長さは 248 文字未満、ファイル名の長さは 260 文字未満である必要があります。

IOException

path はファイル名です。

DirectoryNotFoundException

指定したパスが無効です (割り当てられていないドライブであるなど)。

返されるファイルとディレクトリ名の順序は保証されません。使用して、Sortメソッドの特定の並べ替え順序が必要な場合です。

EnumerateFileSystemEntriesGetFileSystemEntriesメソッドは次のように異なります使用するとEnumerateFileSystemEntries、コレクション全体が返されます。 前に、エントリのコレクションを列挙することができます。使用するとGetFileSystemEntries、配列にアクセスする前に、返されるエントリの配列全体を待つ必要があります。そのため、ときに使用する多数のファイルとディレクトリ、EnumerateFiles効率的であることができます。

このメソッドと同じGetFileSystemEntriesアスタリスク (*)、検索パターンとして指定されているとします。

pathパラメーターが許可されている相対パスまたは絶対パスの情報を指定します。相対パス情報は、現在の作業ディレクトリの基準と解釈されます。現在の作業ディレクトリを取得する次を参照してください。GetCurrentDirectoryです。

pathパラメーターが、大文字小文字を区別することはありません。

共通 I/O タスクの一覧は、次を参照してください。共通 I/O タスクです。

次の例では、GetFileSystemEntries配列をコンソールに文字列の各メソッドですべてのファイルと、ユーザーが指定した場所と出力内にあるサブディレクトリの名前で、文字列の配列を設定します。例は、catch のすべてのエラーがこのメソッドに共通するように構成します。

using System;

namespace GetFileSystemEntries
{
    class Class1 
    {
        static void Main(string[] args) 
        {
            Class1 snippets = new Class1();

            string path = System.IO.Directory.GetCurrentDirectory();
            string filter = "*.exe";

            snippets.PrintFileSystemEntries(path);
            snippets.PrintFileSystemEntries(path, filter);		
            snippets.GetLogicalDrives();
            snippets.GetParent(path);
            snippets.Move("C:\\proof", "C:\\Temp");
        }


        void PrintFileSystemEntries(string path) 
        {

            try 
            {
                // Obtain the file system entries in the directory path.
                string[] directoryEntries =
                    System.IO.Directory.GetFileSystemEntries(path); 

                foreach (string str in directoryEntries) 
                {
                    System.Console.WriteLine(str);
                }
            }
            catch (ArgumentNullException) 
            {
                System.Console.WriteLine("Path is a null reference.");
            }
            catch (System.Security.SecurityException) 
            {
                System.Console.WriteLine("The caller does not have the " +
                    "required permission.");
            }
            catch (ArgumentException) 
            {
                System.Console.WriteLine("Path is an empty string, " +
                    "contains only white spaces, " + 
                    "or contains invalid characters.");
            }
            catch (System.IO.DirectoryNotFoundException) 
            {
                System.Console.WriteLine("The path encapsulated in the " + 
                    "Directory object does not exist.");
            }
        }
        void PrintFileSystemEntries(string path, string pattern) 
        {
            try 
            {
                // Obtain the file system entries in the directory
                // path that match the pattern.
                string[] directoryEntries =
                    System.IO.Directory.GetFileSystemEntries(path, pattern); 

                foreach (string str in directoryEntries) 
                {
                    System.Console.WriteLine(str);
                }
            }
            catch (ArgumentNullException) 
            {
                System.Console.WriteLine("Path is a null reference.");
            }
            catch (System.Security.SecurityException) 
            {
                System.Console.WriteLine("The caller does not have the " +
                    "required permission.");
            }
            catch (ArgumentException) 
            {
                System.Console.WriteLine("Path is an empty string, " +
                    "contains only white spaces, " + 
                    "or contains invalid characters.");
            }
            catch (System.IO.DirectoryNotFoundException) 
            {
                System.Console.WriteLine("The path encapsulated in the " + 
                    "Directory object does not exist.");
            }
        }

        // Print out all logical drives on the system.
        void GetLogicalDrives() 
        {
            try 
            {
                string[] drives = System.IO.Directory.GetLogicalDrives();

                foreach (string str in drives) 
                {
                    System.Console.WriteLine(str);
                }
            }
            catch (System.IO.IOException) 
            {
                System.Console.WriteLine("An I/O error occurs.");
            }
            catch (System.Security.SecurityException) 
            {
                System.Console.WriteLine("The caller does not have the " +
                    "required permission.");
            }
        }
        void GetParent(string path) 
        {
            try 
            {
                System.IO.DirectoryInfo directoryInfo =
                    System.IO.Directory.GetParent(path);

                System.Console.WriteLine(directoryInfo.FullName);
            }
            catch (ArgumentNullException) 
            {
                System.Console.WriteLine("Path is a null reference.");
            }
            catch (ArgumentException) 
            {
                System.Console.WriteLine("Path is an empty string, " +
                    "contains only white spaces, or " +
                    "contains invalid characters.");
            }
        }
        void Move(string sourcePath, string destinationPath) 
        {
            try 
            {
                System.IO.Directory.Move(sourcePath, destinationPath);
                System.Console.WriteLine("The directory move is complete.");
            }
            catch (ArgumentNullException) 
            {
                System.Console.WriteLine("Path is a null reference.");
            }
            catch (System.Security.SecurityException) 
            {
                System.Console.WriteLine("The caller does not have the " +
                    "required permission.");
            }
            catch (ArgumentException) 
            {
                System.Console.WriteLine("Path is an empty string, " +
                    "contains only white spaces, " + 
                    "or contains invalid characters.");	
            }
            catch (System.IO.IOException) 
            {
                System.Console.WriteLine("An attempt was made to move a " +
                    "directory to a different " +
                    "volume, or destDirName " +
                    "already exists."); 
            }
        }
    }
}

FileIOPermission

現在のディレクトリのパス情報へのアクセス。関連する列挙。FileIOPermissionAccess.PathDiscovery

Universal Windows Platform
10 から利用可能
.NET Framework
1.1 から利用可能
Silverlight
2.0 から利用可能
Windows Phone Silverlight
7.0 から利用可能
トップに戻る
表示:
© 2016 Microsoft