エクスポート (0) 印刷
すべて展開
この記事は機械翻訳されたものです。 記事の文章にポインターを重ねると、原文のテキストが表示されます。 詳細情報
訳文
原文

Directory クラス

ディレクトリやサブディレクトリを通じて、作成、移動、および列挙するための静的メソッドを公開します。 このクラスは継承できません。

System.Object
  System.IO.Directory

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

[ComVisibleAttribute(true)]
public static class Directory

Directory 型で公開されるメンバーは以下のとおりです。

  名前説明
パブリック メソッド静的メンバーXNA Framework によるサポートCreateDirectory(String)指定したパスにすべてのディレクトリとサブディレクトリを作成します。
パブリック メソッド静的メンバーCreateDirectory(String, DirectorySecurity)指定したパスにすべてのディレクトリを作成し、指定した Windows セキュリティを適用します。
パブリック メソッド静的メンバーXNA Framework によるサポートDelete(String)指定したパスから空のディレクトリを削除します。
パブリック メソッド静的メンバーXNA Framework によるサポートDelete(String, Boolean)指定したディレクトリと、特に指定されている場合はディレクトリ内の任意のサブディレクトリおよびファイルを削除します。
パブリック メソッド静的メンバーEnumerateDirectories(String)指定されたパスに存在するディレクトリ名の列挙可能なコレクションを返します。
パブリック メソッド静的メンバーEnumerateDirectories(String, String)指定されたパスから、検索パターンに一致するディレクトリ名の列挙可能なコレクションを返します。
パブリック メソッド静的メンバーEnumerateDirectories(String, String, SearchOption)指定されたパスにあるディレクトリのうち、検索パターンに一致するディレクトリ名の列挙可能なコレクションを返します。オプションでサブディレクトリを検索対象にすることができます。
パブリック メソッド静的メンバーEnumerateFiles(String)指定されたパスに存在するファイル名の列挙可能なコレクションを返します。
パブリック メソッド静的メンバーEnumerateFiles(String, String)指定されたパスから、検索パターンに一致するファイル名の列挙可能なコレクションを返します。
パブリック メソッド静的メンバーEnumerateFiles(String, String, SearchOption)指定されたパスにあるファイルのうち、検索パターンに一致するファイル名の列挙可能なコレクションを返します。オプションでサブディレクトリを検索対象にすることができます。
パブリック メソッド静的メンバーEnumerateFileSystemEntries(String)指定されたパスに存在するファイル システム エントリの列挙可能なコレクションを返します。
パブリック メソッド静的メンバーEnumerateFileSystemEntries(String, String)指定されたパスから、検索パターンに一致するファイル システム エントリの列挙可能なコレクションを返します。
パブリック メソッド静的メンバーEnumerateFileSystemEntries(String, String, SearchOption)指定されたパスにあるディレクトリのうち、検索パターンに一致するファイル名およびディレクトリ名の列挙可能なコレクションを返します。オプションでサブディレクトリを検索対象にすることができます。
パブリック メソッド静的メンバーXNA Framework によるサポートExists指定したパスがディスク上の既存のディレクトリを参照しているかどうかを確認します。
パブリック メソッド静的メンバーGetAccessControl(String)指定したディレクトリのアクセス制御リスト (ACL) エントリをカプセル化する DirectorySecurity オブジェクトを取得します。
パブリック メソッド静的メンバーGetAccessControl(String, AccessControlSections)指定したディレクトリの、指定した種類のアクセス制御リスト (ACL) エントリをカプセル化する DirectorySecurity オブジェクトを取得します。
パブリック メソッド静的メンバーXNA Framework によるサポートGetCreationTimeディレクトリの作成日時を取得します。
パブリック メソッド静的メンバーGetCreationTimeUtc世界協定時刻 (UTC: Coordinated Universal Time) 形式でのディレクトリの作成日時を取得します。
パブリック メソッド静的メンバーXNA Framework によるサポートGetCurrentDirectoryアプリケーションの現在の作業ディレクトリを取得します。
パブリック メソッド静的メンバーXNA Framework によるサポートGetDirectories(String)指定したディレクトリ内のサブディレクトリの名前 (パスを含む) を取得します。
パブリック メソッド静的メンバーXNA Framework によるサポートGetDirectories(String, String)現在のディレクトリ内で指定した検索パターンに一致するサブディレクトリの名前 (パスを含む) を取得します。
パブリック メソッド静的メンバーGetDirectories(String, String, SearchOption)現在のディレクトリ内で、指定された検索パターンに一致するサブディレクトリの名前 (パスを含む) を取得します。オプションで、サブディレクトリを検索対象にすることができます。
パブリック メソッド静的メンバーXNA Framework によるサポートGetDirectoryRoot指定したパスのボリューム情報またはルート情報、あるいはその両方を返します。
パブリック メソッド静的メンバーXNA Framework によるサポートGetFiles(String)指定したディレクトリ内のファイルの名前 (パスを含む) を返します。
パブリック メソッド静的メンバーXNA Framework によるサポートGetFiles(String, String)指定したディレクトリ内の指定した検索パターンに一致するファイル名 (パスを含む) を返します。
パブリック メソッド静的メンバーGetFiles(String, String, SearchOption)指定したディレクトリの中から、指定した検索パターンに一致し、サブディレクトリを検索するかどうかを決定する値を持つファイル名 (パスを含む) を返します。
パブリック メソッド静的メンバーXNA Framework によるサポートGetFileSystemEntries(String)指定したディレクトリ内のすべてのファイル名とサブディレクトリ名を返します。
パブリック メソッド静的メンバーXNA Framework によるサポートGetFileSystemEntries(String, String)指定した検索条件に一致するファイル システム エントリの配列を返します。
パブリック メソッド静的メンバーGetFileSystemEntries(String, String, SearchOption)指定されたパスにあるファイルおよびディレクトリのうち、検索パターンに一致するすべてのファイル名およびディレクトリ名の配列を取得します。オプションでサブディレクトリを検索対象にすることができます。
パブリック メソッド静的メンバーXNA Framework によるサポートGetLastAccessTime指定したファイルまたはディレクトリに最後にアクセスした日付と時刻を返します。
パブリック メソッド静的メンバーGetLastAccessTimeUtc指定したファイルまたはディレクトリに最後にアクセスした日付と時刻を世界協定時刻 (UTC) 形式で返します。
パブリック メソッド静的メンバーXNA Framework によるサポートGetLastWriteTime指定したファイルまたはディレクトリに最後に書き込んだ日付と時刻を返します。
パブリック メソッド静的メンバーGetLastWriteTimeUtc指定したファイルまたはディレクトリに最後に書き込んだ日付と時刻を世界協定時刻 (UTC) 形式で返します。
パブリック メソッド静的メンバーGetLogicalDrivesこのコンピューターの論理ドライブ名を "<drive letter>:\" の形式で取得します。
パブリック メソッド静的メンバーGetParent絶対パスと相対パスの両方を含む指定したパスの親ディレクトリを取得します。
パブリック メソッド静的メンバーXNA Framework によるサポートMoveファイルまたはディレクトリ、およびその内容を新しい場所に移動します。
パブリック メソッド静的メンバーSetAccessControl DirectorySecurity オブジェクトが示すアクセス制御リスト (ACL: Access Control List) エントリを、指定したディレクトリに適用します。
パブリック メソッド静的メンバーSetCreationTime指定したファイルまたはディレクトリの作成日時を設定します。
パブリック メソッド静的メンバーSetCreationTimeUtc指定したファイルまたはディレクトリの作成日時を世界協定時刻 (UTC) 形式で設定します。
パブリック メソッド静的メンバーXNA Framework によるサポートSetCurrentDirectoryアプリケーションの現在の作業ディレクトリを指定したディレクトリに設定します。
パブリック メソッド静的メンバーSetLastAccessTime指定したファイルまたはディレクトリに最後にアクセスした日付と時刻を設定します。
パブリック メソッド静的メンバーSetLastAccessTimeUtc指定したファイルまたはディレクトリに最後にアクセスした日付と時刻を世界協定時刻 (UTC) 形式で設定します。
パブリック メソッド静的メンバーSetLastWriteTimeディレクトリに最後に書き込んだ日付と時刻を設定します。
パブリック メソッド静的メンバーSetLastWriteTimeUtcディレクトリに最後に書き込んだ日付と時刻を世界協定時刻 (UTC) 形式で設定します。
このページのトップへ

Use the Directory class for typical operations such as copying, moving, renaming, creating, and deleting directories. You can also use the Directory class to get and set DateTime information related to the creation, access, and writing of a directory.

Because all Directory methods are static, it might be more efficient to use a Directory method rather than a corresponding DirectoryInfo instance method if you want to perform only one action. Most Directory methods require the path to the directory that you are manipulating.

The static methods of the Directory class perform security checks on all methods. If you are going to reuse an object several times, consider using the corresponding instance method of DirectoryInfo instead, because the security check will not always be necessary.

メモメモ

In members that accept a path as an input string, that path must be well-formed or an exception is raised; however, if a path is fully qualified but begins with a space, the space is not omitted but no exception is raised. Similarly, a path or a combination of paths cannot be fully qualified twice. For example, "c:\temp c:\windows" also raises an exception in most cases. Ensure that your paths are well-formed when using methods that accept a path string.

In members that accept a path, the path can refer to a file or just a directory. The specified path can also refer to a relative path or a Universal Naming Convention (UNC) path for a server and share name. For example, all the following are acceptable paths:

  • "c:\\MyDir" in C#, or "c:\MyDir" in Visual Basic.

  • "MyDir\\MySubdir" in C#, or "MyDir\MySubDir" in Visual Basic.

  • "\\\\MyServer\\MyShare" in C#, or "\\MyServer\MyShare" in Visual Basic.

By default, full read/write access to new directories is granted to all users. Demanding permission for a directory where the path string ends with the directory separator character results in demanding permissions for all the contained subdirectories (for example, "C:\Temp\"). If permissions are required only for a specific directory, the string should end with a period (for example, "C:\Temp\.").

For a list of common I/O tasks, see 共通 I/O タスク.

The following example shows how to retrieve all the text files from a directory and move them to a new directory. After the files are moved, they no longer exist in the original directory.


using System;
using System.IO;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            string sourceDirectory = @"C:\current";
            string archiveDirectory = @"C:\archive";

            try
            {
                var txtFiles = Directory.EnumerateFiles(sourceDirectory, "*.txt");

                foreach (string currentFile in txtFiles)
                {
                    string fileName = currentFile.Substring(sourceDirectory.Length + 1);
                    Directory.Move(currentFile, Path.Combine(archiveDirectory, fileName));
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }
    }
}


The following example demonstrates how to use the EnumerateFiles method to retrieve a collection of text files from a directory, and then use that collection in a query to find all the lines that contain "Example".


using System;
using System.IO;
using System.Linq;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            string archiveDirectory = @"C:\archive";

            var files = from retrievedFile in Directory.EnumerateFiles(archiveDirectory, "*.txt", SearchOption.AllDirectories)
                        from line in File.ReadLines(retrievedFile)
                        where line.Contains("Example")
                        select new
                        {
                            File = retrievedFile,
                            Line = line
                        };

            foreach (var f in files)
            {
                Console.WriteLine("{0} contains {1}", f.File, f.Line);
            }
            Console.WriteLine("{0} lines found.", files.Count().ToString());
        }
    }
}


The following example demonstrates how to move a directory and all its files to a new directory. The original directory no longer exists after it has been moved.


using System;
using System.IO;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            string sourceDirectory = @"C:\source";
            string destinationDirectory = @"C:\destination";

            try
            {
                Directory.Move(sourceDirectory, destinationDirectory);  
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }
    }
}


.NET Framework

サポート対象 : 4.5、4、3.5、3.0、2.0、1.1、1.0

.NET Framework Client Profile

サポート対象 : 4、3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (サーバー コア ロールはサポート対象外), Windows Server 2008 R2 (SP1 以降でサーバー コア ロールをサポート。Itanium はサポート対象外)

この .NET Framework では、各プラットフォームのすべてのバージョンはサポートしていません。サポートされているバージョンについては、次を参照してください。.NET Framework システム要件.

パブリック static (Visual Basic では Shared) メンバーがこの型である場合は、いずれもスレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。

コミュニティの追加

追加
表示:
© 2014 Microsoft