FileSystemInfo Klass

Definition

Tillhandahåller basklassen för både FileInfo och DirectoryInfo objekt.

public ref class FileSystemInfo abstract
public ref class FileSystemInfo abstract : MarshalByRefObject, System::Runtime::Serialization::ISerializable
public abstract class FileSystemInfo
public abstract class FileSystemInfo : MarshalByRefObject, System.Runtime.Serialization.ISerializable
[System.Serializable]
public abstract class FileSystemInfo : MarshalByRefObject, System.Runtime.Serialization.ISerializable
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class FileSystemInfo : MarshalByRefObject, System.Runtime.Serialization.ISerializable
type FileSystemInfo = class
type FileSystemInfo = class
    inherit MarshalByRefObject
    interface ISerializable
[<System.Serializable>]
type FileSystemInfo = class
    inherit MarshalByRefObject
    interface ISerializable
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type FileSystemInfo = class
    inherit MarshalByRefObject
    interface ISerializable
Public MustInherit Class FileSystemInfo
Public MustInherit Class FileSystemInfo
Inherits MarshalByRefObject
Implements ISerializable
Arv
FileSystemInfo
Arv
FileSystemInfo
Härledda
Attribut
Implementeringar

Exempel

I följande exempel visas hur du loopar igenom alla filer och kataloger och frågar efter viss information om varje post.

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

Kommentarer

Klassen FileSystemInfo innehåller metoder som är gemensamma för fil- och katalogmanipulering. Ett FileSystemInfo objekt kan representera antingen en fil eller en katalog, vilket fungerar som grund för FileInfo eller DirectoryInfo objekt. Använd den här basklassen när du parsar många filer och kataloger.

En härledd klass kan bara ärva från FileSystemInfo om den härledda klassen har behörigheten AllAccess från FileIOPermissionAccess uppräkningen.

I medlemmar som accepterar en sökväg kan sökvägen referera till en fil eller bara en katalog. Den angivna sökvägen kan också referera till en relativ sökväg eller en UNC-sökväg (Universal Naming Convention) för en server och ett resursnamn. Till exempel är alla följande godkända sökvägar:

  • "c:\\MyDir\\MyFile.txt" i C#, eller "c:\MyDir\MyFile.txt" i Visual Basic.

  • "c:\\MyDir" i C#, eller "c:\MyDir" i Visual Basic.

  • "MyDir\\MySubdir" i C#, eller "MyDir\MySubDir" i Visual Basic.

  • "\\\\MyServer\\MyShare" i C#, eller "\\MyServer\MyShare" i Visual Basic.

En lista över vanliga I/O-uppgifter finns i Vanliga I/O-uppgifter.

Konstruktorer

Name Description
FileSystemInfo()

Initierar en ny instans av FileSystemInfo klassen.

FileSystemInfo(SerializationInfo, StreamingContext)
Föråldrad.

Initierar en ny instans av FileSystemInfo klassen med serialiserade data.

Fält

Name Description
FullPath

Representerar den fullständigt kvalificerade sökvägen för katalogen eller filen.

OriginalPath

Sökvägen som ursprungligen angavs av användaren, oavsett om den är relativ eller absolut.

Egenskaper

Name Description
Attributes

Hämtar eller anger attributen för den aktuella filen eller katalogen.

CreationTime

Hämtar eller anger skapandetiden för den aktuella filen eller katalogen.

CreationTimeUtc

Hämtar eller anger skapandetiden, i samordnad universell tid (UTC), för den aktuella filen eller katalogen.

Exists

Hämtar ett värde som anger om filen eller katalogen finns.

Extension

Hämtar filnamnsdelen, inklusive den inledande punkten . även om det är hela filnamnet eller en tom sträng om det inte finns något tillägg.

FullName

Hämtar den fullständiga sökvägen till katalogen eller filen.

LastAccessTime

Hämtar eller anger den tid då den aktuella filen eller katalogen senast användes.

LastAccessTimeUtc

Hämtar eller anger den tid i samordnad universell tid (UTC) som den aktuella filen eller katalogen senast användes.

LastWriteTime

Hämtar eller anger den tid då den aktuella filen eller katalogen senast skrevs till.

LastWriteTimeUtc

Hämtar eller anger tiden, i samordnad universell tid (UTC), när den aktuella filen eller katalogen senast skrevs till.

LinkTarget

Hämtar målsökvägen för länken som finns i FullName, eller null om den här FileSystemInfo instansen inte representerar en länk.

Name

För filer hämtar du namnet på filen. För kataloger hämtar du namnet på den sista katalogen i hierarkin om det finns en hierarki. Annars Name hämtar egenskapen namnet på katalogen.

UnixFileMode

Hämtar eller anger Unix-filläget för den aktuella filen eller katalogen.

Metoder

Name Description
CreateAsSymbolicLink(String)

Skapar en symbolisk länk som pekar FullName på den angivna pathToTarget.

CreateObjRef(Type)

Skapar ett objekt som innehåller all relevant information som krävs för att generera en proxy som används för att kommunicera med ett fjärrobjekt.

(Ärvd från MarshalByRefObject)
Delete()

Tar bort en fil eller katalog.

Equals(Object)

Avgör om det angivna objektet är lika med det aktuella objektet.

(Ärvd från Object)
GetHashCode()

Fungerar som standard-hash-funktion.

(Ärvd från Object)
GetLifetimeService()
Föråldrad.

Hämtar det aktuella livslängdstjänstobjektet som styr livslängdsprincipen för den här instansen.

(Ärvd från MarshalByRefObject)
GetObjectData(SerializationInfo, StreamingContext)
Föråldrad.

Anger objektet SerializationInfo med filnamnet och ytterligare undantagsinformation.

GetType()

Hämtar den aktuella instansen Type .

(Ärvd från Object)
InitializeLifetimeService()
Föråldrad.

Hämtar ett tjänstobjekt för livslängd för att styra livslängdsprincipen för den här instansen.

(Ärvd från MarshalByRefObject)
MemberwiseClone()

Skapar en ytlig kopia av den aktuella Object.

(Ärvd från Object)
MemberwiseClone(Boolean)

Skapar en ytlig kopia av det aktuella MarshalByRefObject objektet.

(Ärvd från MarshalByRefObject)
Refresh()

Uppdaterar objektets tillstånd.

ResolveLinkTarget(Boolean)

Hämtar målet för den angivna länken.

ToString()

Returnerar den ursprungliga sökvägen. FullName Använd egenskaperna eller Name för den fullständiga sökvägen eller fil-/katalognamnet.

ToString()

Returnerar en sträng som representerar det aktuella objektet.

(Ärvd från Object)

Gäller för

Se även