FileSystemInfo FileSystemInfo FileSystemInfo FileSystemInfo Class

定義

FileInfo オブジェクトと DirectoryInfo オブジェクトの両方の基本クラスを提供します。Provides the base class for both FileInfo and DirectoryInfo objects.

public ref class FileSystemInfo abstract : MarshalByRefObject, System::Runtime::Serialization::ISerializable
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public abstract class FileSystemInfo : MarshalByRefObject, System.Runtime.Serialization.ISerializable
type FileSystemInfo = class
    inherit MarshalByRefObject
    interface ISerializable
Public MustInherit Class FileSystemInfo
Inherits MarshalByRefObject
Implements ISerializable
継承
派生
属性
実装

次の例では、すべてのファイルとディレクトリをループ処理し、各エントリに関する情報を照会する方法を示します。The following example shows how to loop through all the files and directories, querying some information about each entry.

using namespace System;
using namespace System::IO;


namespace ConsoleApplication2
{
    public ref class Program
    {
    public:
        static void Main()
        {
            //  Loop through all the immediate subdirectories of C.
            for each (String^ entry in Directory::GetDirectories("C:\\"))
            {
                DisplayFileSystemInfoAttributes(gcnew DirectoryInfo(entry));
            }
            //  Loop through all the files in C.
            for each (String^ entry in Directory::GetFiles("C:\\"))
            {
                DisplayFileSystemInfoAttributes(gcnew FileInfo(entry));
            }
        }
        static void DisplayFileSystemInfoAttributes(FileSystemInfo^ fsi)
        {
            //  Assume that this entry is a file.
            String^ entryType = "File";

            // Determine if entry is really a directory
            if ((fsi->Attributes & FileAttributes::Directory) == FileAttributes::Directory)
            {
                entryType = "Directory";
            }
            //  Show this entry's type, name, and creation date.
            Console::WriteLine("{0} entry {1} was created on {2:D}", entryType, fsi->FullName, fsi->CreationTime);
        }
    };
};

int main()
{
    ConsoleApplication2::Program::Main();
}

 // Output will vary based on contents of drive C.

 // Directory entry C:\Documents and Settings was created on Tuesday, November 25, 2003
 // Directory entry C:\Inetpub was created on Monday, January 12, 2004
 // Directory entry C:\Program Files was created on Tuesday, November 25, 2003
 // Directory entry C:\RECYCLER was created on Tuesday, November 25, 2003
 // Directory entry C:\System Volume Information was created on Tuesday, November 2, 2003
 // Directory entry C:\WINDOWS was created on Tuesday, November 25, 2003
 // File entry C:\IO.SYS was created on Tuesday, November 25, 2003
 // File entry C:\MSDOS.SYS was created on Tuesday, November 25, 2003
 // File entry C:\pagefile.sys was created on Saturday, December 27, 2003
using System;
using System.IO;


namespace ConsoleApplication2
{
    class Program
    {
        static void Main(string[] args)
        {
            //  Loop through all the immediate subdirectories of C.
            foreach (string entry in Directory.GetDirectories(@"C:\"))
            {
                DisplayFileSystemInfoAttributes(new DirectoryInfo(entry));
            }
            //  Loop through all the files in C.
            foreach (string entry in Directory.GetFiles(@"C:\"))
            {
                DisplayFileSystemInfoAttributes(new FileInfo(entry));
            }
        }
        static void DisplayFileSystemInfoAttributes(FileSystemInfo fsi)
        {
            //  Assume that this entry is a file.
            string entryType = "File";

            // Determine if entry is really a directory
            if ((fsi.Attributes & FileAttributes.Directory) == FileAttributes.Directory )
            {
                entryType = "Directory";
            }
            //  Show this entry's type, name, and creation date.
            Console.WriteLine("{0} entry {1} was created on {2:D}", entryType, fsi.FullName, fsi.CreationTime);
        }
    }
}

 // Output will vary based on contents of drive C.
 
 // Directory entry C:\Documents and Settings was created on Tuesday, November 25, 2003
 // Directory entry C:\Inetpub was created on Monday, January 12, 2004
 // Directory entry C:\Program Files was created on Tuesday, November 25, 2003
 // Directory entry C:\RECYCLER was created on Tuesday, November 25, 2003
 // Directory entry C:\System Volume Information was created on Tuesday, November 2, 2003
 // Directory entry C:\WINDOWS was created on Tuesday, November 25, 2003
 // File entry C:\IO.SYS was created on Tuesday, November 25, 2003
 // File entry C:\MSDOS.SYS was created on Tuesday, November 25, 2003
 // File entry C:\pagefile.sys was created on Saturday, December 27, 2003
Imports System.IO
Module Module1

    Sub Main()
        ' Loop through all the immediate subdirectories of C.
        For Each entry As String In Directory.GetDirectories("C:\")
            DisplayFileSystemInfoAttributes(New DirectoryInfo(entry))
        Next

        ' Loop through all the files in C.
        For Each entry As String In Directory.GetFiles("C:\")
            DisplayFileSystemInfoAttributes(New FileInfo(entry))
        Next
    End Sub

    Sub DisplayFileSystemInfoAttributes(ByVal fsi As IO.FileSystemInfo)
        ' Assume that this entry is a file.
        Dim entryType As String = "File"

        ' Determine if this entry is really a directory.
        If (fsi.Attributes And FileAttributes.Directory) = FileAttributes.Directory Then
            entryType = "Directory"
        End If

        ' Show this entry's type, name, and creation date.
        Console.WriteLine("{0} entry {1} was created on {2:D}", _
            entryType, fsi.FullName, fsi.CreationTime)
    End Sub
End Module

' Output will vary based on contents of drive C.
' 
' Directory entry C:\Documents and Settings was created on Tuesday, November 25, 2003
' Directory entry C:\Inetpub was created on Monday, January 12, 2004
' Directory entry C:\Program Files was created on Tuesday, November 25, 2003
' Directory entry C:\RECYCLER was created on Tuesday, November 25, 2003
' Directory entry C:\System Volume Information was created on Tuesday, November 2, 2003
' Directory entry C:\WINDOWS was created on Tuesday, November 25, 2003
' File entry C:\IO.SYS was created on Tuesday, November 25, 2003
' File entry C:\MSDOS.SYS was created on Tuesday, November 25, 2003
' File entry C:\pagefile.sys was created on Saturday, December 27, 2003

注釈

クラスFileSystemInfoには、ファイルおよびディレクトリの操作に共通するメソッドが含まれています。The FileSystemInfo class contains methods that are common to file and directory manipulation. オブジェクトは、ファイルまたはディレクトリのいずれかを表すことができるため、 FileInfoまたDirectoryInfoはオブジェクトの基礎として機能します。 FileSystemInfoA FileSystemInfo object can represent either a file or a directory, thus serving as the basis for FileInfo or DirectoryInfo objects. この基本クラスは、多数のファイルとディレクトリを解析する場合に使用します。Use this base class when parsing a lot of files and directories.

派生クラスは、派生クラスFileSystemInfoFileIOPermissionAccess列挙体からの allaccess アクセス許可を持っている場合にのみ、から継承できます。A derived class can inherit from FileSystemInfo only if the derived class has the AllAccess permission from the FileIOPermissionAccess enumeration.

パスを受け入れるメンバーでは、ファイルまたはディレクトリのみを参照できます。In members that accept a path, the path can refer to a file or just a directory. 指定されたパスは、サーバーと共有名の相対パスまたは UNC (汎用名前付け規則) パスを参照することもできます。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:

  • Visual Basic の "\c\: \MyDir \MyFile.txt C#" または "c:\MyDir\MyFile.txt"。"c:\\MyDir\\MyFile.txt" in C#, or "c:\MyDir\MyFile.txt" in Visual Basic.

  • Visual Basic の "\c: \MyDir C#" または "c:\MyDir"。"c:\\MyDir" in C#, or "c:\MyDir" in Visual Basic.

  • Visual Basic の "\mydir \MySubdir C#"、または "MyDir\MySubDir"。"MyDir\\MySubdir" in C#, or "MyDir\MySubDir" in Visual Basic.

  • \ C#Visual Basic の "\MyServer\\MyShare" または\"「\myserver\myshare」"。\\"\\\\MyServer\\MyShare" in C#, or "\\MyServer\MyShare" in Visual Basic.

共通 I/O タスクの一覧は、 共通 I/O タスク を参照してください。For a list of common I/O tasks, see Common I/O Tasks.

コンストラクター

FileSystemInfo() FileSystemInfo() FileSystemInfo() FileSystemInfo()

FileSystemInfo クラスの新しいインスタンスを初期化します。Initializes a new instance of the FileSystemInfo class.

FileSystemInfo(SerializationInfo, StreamingContext) FileSystemInfo(SerializationInfo, StreamingContext) FileSystemInfo(SerializationInfo, StreamingContext) FileSystemInfo(SerializationInfo, StreamingContext)

シリアル化したデータを使用して、FileSystemInfo クラスの新しいインスタンスを初期化します。Initializes a new instance of the FileSystemInfo class with serialized data.

フィールド

FullPath FullPath FullPath FullPath

ディレクトリまたはファイルの絶対パスを表します。Represents the fully qualified path of the directory or file.

OriginalPath OriginalPath OriginalPath OriginalPath

パスは、以前にユーザーが相対パスまたは絶対パスで指定したものです。The path originally specified by the user, whether relative or absolute.

プロパティ

Attributes Attributes Attributes Attributes

現在のファイルまたはディレクトリの属性を取得または設定します。Gets or sets the attributes for the current file or directory.

CreationTime CreationTime CreationTime CreationTime

現在のファイルまたはディレクトリの作成日時を取得または設定します。Gets or sets the creation time of the current file or directory.

CreationTimeUtc CreationTimeUtc CreationTimeUtc CreationTimeUtc

現在のファイルまたはディレクトリの作成日時を世界協定時刻 (UTC) で取得または設定します。Gets or sets the creation time, in coordinated universal time (UTC), of the current file or directory.

Exists Exists Exists Exists

ファイルまたはディレクトリが存在するかどうかを示す値を取得します。Gets a value indicating whether the file or directory exists.

Extension Extension Extension Extension

ファイルの拡張子部分を表す文字列を取得します。Gets the string representing the extension part of the file.

FullName FullName FullName FullName

ディレクトリまたはファイルの絶対パスを取得します。Gets the full path of the directory or file.

LastAccessTime LastAccessTime LastAccessTime LastAccessTime

現在のファイルまたはディレクトリに最後にアクセスした時刻を取得または設定します。Gets or sets the time the current file or directory was last accessed.

LastAccessTimeUtc LastAccessTimeUtc LastAccessTimeUtc LastAccessTimeUtc

現在のファイルまたはディレクトリに最後にアクセスした時刻を世界協定時刻 (UTC) で取得または設定します。Gets or sets the time, in coordinated universal time (UTC), that the current file or directory was last accessed.

LastWriteTime LastWriteTime LastWriteTime LastWriteTime

現在のファイルまたはディレクトリに最後に書き込みが行われた時刻を取得または設定します。Gets or sets the time when the current file or directory was last written to.

LastWriteTimeUtc LastWriteTimeUtc LastWriteTimeUtc LastWriteTimeUtc

現在のファイルまたはディレクトリに最後に書き込みが行われた時刻を世界協定時刻 (UTC) で取得または設定します。Gets or sets the time, in coordinated universal time (UTC), when the current file or directory was last written to.

Name Name Name Name

ファイルの場合は、そのファイルの名前を取得します。For files, gets the name of the file. ディレクトリの場合は、階層が存在する場合は、その階層内にある最後のディレクトリの名前を取得します。For directories, gets the name of the last directory in the hierarchy if a hierarchy exists. それ以外の場合は、Name プロパティはそのディレクトリの名前を取得します。Otherwise, the Name property gets the name of the directory.

メソッド

CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type)

リモート オブジェクトとの通信に使用するプロキシの生成に必要な情報をすべて格納しているオブジェクトを作成します。Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
Delete() Delete() Delete() Delete()

ファイルまたはディレクトリを削除します。Deletes a file or directory.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(Inherited from Object)
GetLifetimeService() GetLifetimeService() GetLifetimeService() GetLifetimeService()

対象のインスタンスの有効期間ポリシーを制御する、現在の有効期間サービス オブジェクトを取得します。Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext)

ファイル名と追加の例外情報を使用して SerializationInfo オブジェクトを設定します。Sets the SerializationInfo object with the file name and additional exception information.

GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(Inherited from Object)
InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService()

このインスタンスの有効期間ポリシーを制御する有効期間サービス オブジェクトを取得します。Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean)

現在の MarshalByRefObject オブジェクトの簡易コピーを作成します。Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
Refresh() Refresh() Refresh() Refresh()

オブジェクトの状態を更新します。Refreshes the state of the object.

ToString() ToString() ToString() ToString()

元のパスを返します。Returns the original path. 完全なパスの FullName または Name のプロパティ、またはファイル名またはディレクトリ名を使用します。Use the FullName or Name properties for the full path or file/directory name.

セキュリティ

FileIOPermission
このクラスを継承するアクセス許可の場合は。for permission to inherit from this class. 関連付けられた列挙型:UnrestrictedAssociated enumeration: Unrestricted セキュリティアクション:継承の要求Security Action: Inheritance Demand

適用対象

こちらもご覧ください