FileSystemInfo Classe

Definizione

Fornisce la classe di base sia per gli oggetti che per FileInfoDirectoryInfo gli oggetti .

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
Ereditarietà
FileSystemInfo
Ereditarietà
FileSystemInfo
Derivato
Attributi
Implementazioni

Esempio

Nell'esempio seguente viene illustrato come scorrere tutti i file e le directory, eseguendo query su alcune informazioni su ogni voce.

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

Commenti

La FileSystemInfo classe contiene metodi comuni alla manipolazione di file e directory. Un FileSystemInfo oggetto può rappresentare un file o una directory, fungendo quindi da base per FileInfo gli oggetti o DirectoryInfo . Usare questa classe di base durante l'analisi di molti file e directory.

Una classe derivata può ereditare da FileSystemInfo solo se la classe derivata dispone dell'autorizzazione AllAccess dall'enumerazione FileIOPermissionAccess .

Nei membri che accettano un percorso, il percorso può fare riferimento a un file o solo a una directory. Il percorso specificato può anche fare riferimento a un percorso relativo o a un percorso UNC (Universal Naming Convention) per un server e un nome di condivisione. Ad esempio, tutti i percorsi seguenti sono accettabili:

  • "c:\\MyDir\\MyFile.txt" in C# o "c:\MyDir\MyFile.txt" in Visual Basic.

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

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

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

Per un elenco delle attività di I/O comuni, vedere Attività di I/O comuni.

Costruttori

Nome Descrizione
FileSystemInfo()

Inizializza una nuova istanza della classe FileSystemInfo.

FileSystemInfo(SerializationInfo, StreamingContext)
Obsoleti.

Inizializza una nuova istanza della FileSystemInfo classe con dati serializzati.

Campi

Nome Descrizione
FullPath

Rappresenta il percorso completo della directory o del file.

OriginalPath

Percorso originariamente specificato dall'utente, relativo o assoluto.

Proprietà

Nome Descrizione
Attributes

Ottiene o imposta gli attributi per il file o la directory corrente.

CreationTime

Ottiene o imposta l'ora di creazione del file o della directory corrente.

CreationTimeUtc

Ottiene o imposta l'ora di creazione, nell'ora UTC (Coordinated Universal Time) del file o della directory corrente.

Exists

Ottiene un valore che indica se il file o la directory esiste.

Extension

Ottiene la parte di estensione del nome del file, incluso il punto . iniziale anche se è l'intero nome di file o una stringa vuota se non è presente alcuna estensione.

FullName

Ottiene il percorso completo della directory o del file.

LastAccessTime

Ottiene o imposta l'ora dell'ultimo accesso al file o alla directory corrente.

LastAccessTimeUtc

Ottiene o imposta l'ora, nell'ora UTC (Coordinated Universal Time), a cui è stato eseguito l'ultimo accesso al file o alla directory corrente.

LastWriteTime

Ottiene o imposta l'ora dell'ultima scrittura del file o della directory corrente.

LastWriteTimeUtc

Ottiene o imposta l'ora, nell'ora UTC (Coordinated Universal Time), quando il file o la directory corrente è stato scritto per l'ultima volta.

LinkTarget

Ottiene il percorso di destinazione del collegamento che si trova in FullNameo null se questa FileSystemInfo istanza non rappresenta un collegamento.

Name

Per i file, ottiene il nome del file. Per le directory, ottiene il nome dell'ultima directory nella gerarchia se esiste una gerarchia. In caso contrario, la Name proprietà ottiene il nome della directory.

UnixFileMode

Ottiene o imposta la modalità file Unix per il file o la directory corrente.

Metodi

Nome Descrizione
CreateAsSymbolicLink(String)

Crea un collegamento simbolico che si trova in FullName che punta all'oggetto specificato pathToTarget.

CreateObjRef(Type)

Crea un oggetto che contiene tutte le informazioni pertinenti necessarie per generare un proxy utilizzato per comunicare con un oggetto remoto.

(Ereditato da MarshalByRefObject)
Delete()

Elimina un file o una directory.

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetLifetimeService()
Obsoleti.

Recupera l'oggetto servizio di durata corrente che controlla i criteri di durata per questa istanza.

(Ereditato da MarshalByRefObject)
GetObjectData(SerializationInfo, StreamingContext)
Obsoleti.

Imposta l'oggetto SerializationInfo con il nome del file e informazioni aggiuntive sull'eccezione.

GetType()

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
InitializeLifetimeService()
Obsoleti.

Ottiene un oggetto servizio di durata per controllare i criteri di durata per questa istanza.

(Ereditato da MarshalByRefObject)
MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
MemberwiseClone(Boolean)

Crea una copia superficiale dell'oggetto corrente MarshalByRefObject .

(Ereditato da MarshalByRefObject)
Refresh()

Aggiorna lo stato dell'oggetto.

ResolveLinkTarget(Boolean)

Ottiene la destinazione del collegamento specificato.

ToString()

Restituisce il percorso originale. Usare le FullName proprietà o Name per il percorso completo o il nome di file/directory.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Si applica a

Vedi anche