FileSystemInfo Classe

Definição

Fornece a classe base para ambos FileInfo os objetos.DirectoryInfo

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
Herança
FileSystemInfo
Herança
FileSystemInfo
Derivado
Atributos
Implementações

Exemplos

O exemplo seguinte mostra como percorrer todos os ficheiros e diretórios, consultando alguma informação sobre cada entrada.

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

Observações

A FileSystemInfo classe contém métodos comuns à manipulação de ficheiros e diretórios. Um objeto pode representar tanto um ficheiro como um diretório, servindo FileSystemInfo assim de base para FileInfo objetos de OUR DirectoryInfo . Usa esta classe base ao analisar muitos ficheiros e diretórios.

Uma classe derivada só pode herdar de FileSystemInfo se a classe derivada tiver a permissão AllAccess da FileIOPermissionAccess enumeração.

Nos membros que aceitam um caminho, o caminho pode referir-se a um ficheiro ou apenas a um diretório. O caminho especificado pode também referir-se a um caminho relativo ou a um caminho da Convenção de Nomeação Universal (UNC) para um nome de servidor e partilha. Por exemplo, todos os seguintes são caminhos aceitáveis:

  • "c:\\MyDir\\MyFile.txt" em C#, ou "c:\MyDir\MyFile.txt" em Visual Basic.

  • "c:\\MyDir" em C#, ou "c:\MyDir" no Visual Basic.

  • "MyDir\\MySubdir" em C#, ou "MyDir\MySubDir" em Visual Basic.

  • "\\\\MyServer\\MyShare" em C#, ou "\\MyServer\MyShare" no Visual Basic.

Para uma lista de tarefas comuns de E/S, consulte Tarefas Comuns de E/S.

Construtores

Name Description
FileSystemInfo()

Inicializa uma nova instância da FileSystemInfo classe.

FileSystemInfo(SerializationInfo, StreamingContext)
Obsoleto.

Inicializa uma nova instância da FileSystemInfo classe com dados serializados.

Campos

Name Description
FullPath

Representa o caminho totalmente qualificado do diretório ou ficheiro.

OriginalPath

O caminho originalmente especificado pelo utilizador, seja relativo ou absoluto.

Propriedades

Name Description
Attributes

Obtém ou define os atributos do ficheiro ou diretório atual.

CreationTime

Obtém ou define a hora de criação do ficheiro ou diretório atual.

CreationTimeUtc

Obtém ou define a hora de criação, em tempo universal coordenado (UTC), do ficheiro ou diretório atual.

Exists

Recebe um valor que indica se o ficheiro ou diretório existe.

Extension

Recebe a parte de extensão do nome do ficheiro, incluindo o ponto . inicial mesmo que seja o nome completo do ficheiro, ou uma string vazia se não houver extensão.

FullName

Obtém o caminho completo do diretório ou ficheiro.

LastAccessTime

Obtém ou define a hora em que o ficheiro ou diretório atual foi acedido pela última vez.

LastAccessTimeUtc

Obtém ou define a hora, em tempo universal coordenado (UTC), em que o ficheiro ou diretório atual foi acedido pela última vez.

LastWriteTime

Obtém ou define a hora em que o ficheiro ou diretório atual foi escrito pela última vez.

LastWriteTimeUtc

Obtém ou define a hora, em tempo universal coordenado (UTC), quando o ficheiro ou diretório atual foi escrito pela última vez.

LinkTarget

Obtém o caminho alvo da ligação localizada em FullName, ou null se esta FileSystemInfo instância não representar uma ligação.

Name

Para ficheiros, obtém o nome do ficheiro. Para diretórios, recebe o nome do último diretório na hierarquia se existir uma hierarquia. Caso contrário, a Name propriedade recebe o nome do diretório.

UnixFileMode

Obtém ou define o modo de ficheiro Unix para o ficheiro ou diretório atual.

Métodos

Name Description
CreateAsSymbolicLink(String)

Cria uma ligação simbólica localizada em FullName que aponta para o especificado pathToTarget.

CreateObjRef(Type)

Cria um objeto que contém toda a informação relevante necessária para gerar um proxy usado para comunicar com um objeto remoto.

(Herdado de MarshalByRefObject)
Delete()

Apaga um ficheiro ou diretório.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetLifetimeService()
Obsoleto.

Recupera o objeto de serviço de tempo de vida atual que controla a política de vida útil neste caso.

(Herdado de MarshalByRefObject)
GetObjectData(SerializationInfo, StreamingContext)
Obsoleto.

Define o SerializationInfo objeto com o nome do ficheiro e informações adicionais de exceção.

GetType()

Obtém o Type da instância atual.

(Herdado de Object)
InitializeLifetimeService()
Obsoleto.

Obtém-se um objeto de serviço vitalício para controlar a apólice vitalícia neste caso.

(Herdado de MarshalByRefObject)
MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
MemberwiseClone(Boolean)

Cria uma cópia superficial do objeto atual MarshalByRefObject .

(Herdado de MarshalByRefObject)
Refresh()

Atualiza o estado do objeto.

ResolveLinkTarget(Boolean)

Obtém o alvo do link especificado.

ToString()

Devolve o caminho original. Use as FullName propriedades ou Name para o caminho completo ou nome do ficheiro/diretório.

ToString()

Devolve uma cadeia que representa o objeto atual.

(Herdado de Object)

Aplica-se a

Ver também