FileSystemInfo Klasse

Definition

Stellt die Basisklasse sowohl für FileInfo-Objekte als auch für DirectoryInfo-Objekte bereit.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
Vererbung
FileSystemInfo
Abgeleitet
Attribute
Implementiert

Beispiele

Im folgenden Beispiel wird gezeigt, wie Sie alle Dateien und Verzeichnisse durchlaufen und einige Informationen zu den einzelnen Einträgen Abfragen.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

Hinweise

Die FileSystemInfo -Klasse enthält Methoden, die für die Datei-und Verzeichnis Bearbeitung gemeinsam sind.The FileSystemInfo class contains methods that are common to file and directory manipulation. Ein FileSystemInfo -Objekt kann entweder eine Datei oder ein Verzeichnis darstellen und somit als Grundlage für FileInfo -oder DirectoryInfo -Objekte fungieren.A FileSystemInfo object can represent either a file or a directory, thus serving as the basis for FileInfo or DirectoryInfo objects. Verwenden Sie diese Basisklasse, wenn Sie viele Dateien und Verzeichnisse auswerten.Use this base class when parsing a lot of files and directories.

Eine abgeleitete Klasse kann nur FileSystemInfo von erben, wenn die abgeleitete Klasse über die AllAccess FileIOPermissionAccess -Berechtigung aus der-Enumeration verfügt.A derived class can inherit from FileSystemInfo only if the derived class has the AllAccess permission from the FileIOPermissionAccess enumeration.

In Membern, die einen Pfad akzeptieren, kann der Pfad auf eine Datei oder nur auf ein Verzeichnis verweisen.In members that accept a path, the path can refer to a file or just a directory. Der angegebene Pfad kann auch auf einen relativen Pfad oder einen Universal Naming Convention Pfad (UNC-Pfad) für einen Server und einen Freigabe Namen verweisen.The specified path can also refer to a relative path or a Universal Naming Convention (UNC) path for a server and share name. Die folgenden Pfade sind beispielsweise zulässig:For example, all the following are acceptable paths:

  • "c:\\mydir\\meineDatei.txt C#" in, oder "c:\meinedir\meinedatei.txt" in Visual Basic."c:\\MyDir\\MyFile.txt" in C#, or "c:\MyDir\MyFile.txt" in Visual Basic.

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

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

  • "\ C#\\Myserver\\meinefreigabe" in, oder "\meinserver\meinefreigabe" in Visual Basic.\\"\\\\MyServer\\MyShare" in C#, or "\\MyServer\MyShare" in Visual Basic.

Eine Liste der allgemeinen e/a-Aufgaben finden Sie unter Allgemeine e/a-Aufgaben.For a list of common I/O tasks, see Common I/O Tasks.

Konstruktoren

FileSystemInfo()

Initialisiert eine neue Instanz der FileSystemInfo-Klasse.Initializes a new instance of the FileSystemInfo class.

FileSystemInfo(SerializationInfo, StreamingContext)

Initialisiert eine neue Instanz der FileSystemInfo-Klasse mit serialisierten Daten.Initializes a new instance of the FileSystemInfo class with serialized data.

Felder

FullPath

Stellt den vollqualifizierten Pfad des Verzeichnisses oder der Datei dar.Represents the fully qualified path of the directory or file.

OriginalPath

Der ursprünglich vom Benutzer angegebene Pfad, relativ oder absolut.The path originally specified by the user, whether relative or absolute.

Eigenschaften

Attributes

Ruft die Attribute für die aktuelle Datei oder das aktuelle Verzeichnis ab oder legt diese fest.Gets or sets the attributes for the current file or directory.

CreationTime

Ruft den Erstellungszeitpunkt der aktuellen Datei oder des aktuellen Verzeichnisses ab oder legt diesen fest.Gets or sets the creation time of the current file or directory.

CreationTimeUtc

Ruft die Erstellungszeit der aktuellen Datei oder des aktuellen Verzeichnisses im UTC-Format (Coordinated Universal Time) ab oder legt diese fest.Gets or sets the creation time, in coordinated universal time (UTC), of the current file or directory.

Exists

Ruft einen Wert ab, der angibt, ob die Datei oder das Verzeichnis vorhanden ist.Gets a value indicating whether the file or directory exists.

Extension

Ruft die Zeichenfolge ab, die den Erweiterungsteil der Datei darstellt.Gets the string representing the extension part of the file.

FullName

Ruft den vollständigen Pfad des Verzeichnisses oder der Datei ab.Gets the full path of the directory or file.

LastAccessTime

Ruft den Zeitpunkt des letzten Zugriffs auf die aktuelle Datei oder das aktuelle Verzeichnis ab oder legt diesen fest.Gets or sets the time the current file or directory was last accessed.

LastAccessTimeUtc

Ruft den Zeitpunkt des letzten Zugriffs auf die aktuelle Datei bzw. das aktuelle Verzeichnis im UTC-Format (Coordinated Universal Time) ab oder legt diesen fest.Gets or sets the time, in coordinated universal time (UTC), that the current file or directory was last accessed.

LastWriteTime

Ruft den Zeitpunkt des letzten Schreibzugriffs auf die aktuelle Datei oder das aktuelle Verzeichnis ab oder legt diesen fest.Gets or sets the time when the current file or directory was last written to.

LastWriteTimeUtc

Ruft den Zeitpunkt des letzten Schreibens in die aktuelle Datei oder das aktuelle Verzeichnis im UTC-Format (Coordinated Universal Time) ab oder legt diesen fest.Gets or sets the time, in coordinated universal time (UTC), when the current file or directory was last written to.

Name

Ruft bei Dateien den Namen der Datei ab.For files, gets the name of the file. Ruft bei Verzeichnissen den Namen des letzten Verzeichnisses in der Hierarchie ab, sofern eine Hierarchie vorhanden ist.For directories, gets the name of the last directory in the hierarchy if a hierarchy exists. Andernfalls ruft die Name-Eigenschaft den Namen des Verzeichnisses ab.Otherwise, the Name property gets the name of the directory.

Methoden

CreateObjRef(Type)

Erstellt ein Objekt mit allen relevanten Informationen, die zum Generieren eines Proxys für die Kommunikation mit einem Remoteobjekt erforderlich sind.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Geerbt von MarshalByRefObject)
Delete()

Löscht eine Datei oder ein Verzeichnis.Deletes a file or directory.

Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Geerbt von Object)
GetLifetimeService()

Ruft das aktuelle Lebensdauerdienstobjekt ab, das die Lebensdauerrichtlinien für diese Instanz steuert.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Geerbt von MarshalByRefObject)
GetObjectData(SerializationInfo, StreamingContext)

Legt das SerializationInfo-Objekt mit dem Dateinamen und zusätzlichen Informationen zur Ausnahme fest.Sets the SerializationInfo object with the file name and additional exception information.

GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Geerbt von Object)
InitializeLifetimeService()

Ruft ein Lebensdauerdienstobjekt zur Steuerung der Lebensdauerrichtlinie für diese Instanz ab.Obtains a lifetime service object to control the lifetime policy for this instance.

(Geerbt von MarshalByRefObject)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Geerbt von Object)
MemberwiseClone(Boolean)

Erstellt eine flache Kopie des aktuellen MarshalByRefObject-Objekts.Creates a shallow copy of the current MarshalByRefObject object.

(Geerbt von MarshalByRefObject)
Refresh()

Aktualisiert den Zustand des Objekts.Refreshes the state of the object.

ToString()

Gibt den ursprünglichen Pfad zurück.Returns the original path. Verwenden Sie die Eigenschaft FullName bzw. Name für den vollständigen Pfad bzw. den Datei- und Verzeichnisnamen.Use the FullName or Name properties for the full path or file/directory name.

Sicherheit

FileIOPermission
, wenn die Berechtigung von dieser Klasse erben soll.for permission to inherit from this class. Zugehörige Enumeration:UnrestrictedAssociated enumeration: Unrestricted Sicherheitsaktion: Vererbungs AnforderungSecurity Action: Inheritance Demand

Gilt für:

Siehe auch