FileSystemInfo Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
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à
- 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 |
| 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 |
| 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 |
| 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 |
| 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) |