FileSystemInfo Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Fornece a classe base para os objetos FileInfo e 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
- Derivado
- Atributos
- Implementações
Exemplos
O exemplo a seguir mostra como executar um loop em todos os arquivos e diretórios, consultando algumas informações sobre cada entrada.
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
Comentários
A FileSystemInfo classe contém métodos comuns à manipulação de arquivo e diretório. Um FileSystemInfo objeto pode representar um arquivo ou um diretório, servindo assim como base para FileInfo objetos ou DirectoryInfo . Use essa classe base ao analisar muitos arquivos e diretórios.
Uma classe derivada só poderá herdar se FileSystemInfo a classe derivada tiver a permissão AllAccess da FileIOPermissionAccess enumeração .
Em membros que aceitam um caminho, o caminho pode se referir a um arquivo ou apenas a um diretório. O caminho especificado também pode se referir a um caminho relativo ou a um caminho UNC (Convenção Universal de Nomenclatura) para um servidor e um nome de compartilhamento. Por exemplo, todos os seguintes caminhos são aceitáveis:
"c:\\MyDir\\MyFile.txt" em C#ou "c:\MyDir\MyFile.txt" no Visual Basic.
"c:\\MyDir" em C#ou "c:\MyDir" no Visual Basic.
"MyDir\\MySubdir" em C#ou "MyDir\MySubDir" no Visual Basic.
"\\\\MyServer\\MyShare" em C#ou "\\MyServer\MyShare" no Visual Basic.
Para obter uma lista de tarefas comuns de E/S, consulte Tarefas comuns de E/S.
Construtores
FileSystemInfo() |
Inicializa uma nova instância da classe FileSystemInfo. |
FileSystemInfo(SerializationInfo, StreamingContext) |
Obsoleto.
Inicializa uma nova instância da classe FileSystemInfo com dados serializados. |
Campos
FullPath |
Representa o caminho totalmente qualificado do diretório ou arquivo. |
OriginalPath |
O caminho originalmente especificado pelo usuário, seja ele relativo ou absoluto. |
Propriedades
Attributes |
Obtém ou define os atributos para o arquivo ou diretório atual. |
CreationTime |
Obtém ou define a hora de criação do arquivo ou diretório atual. |
CreationTimeUtc |
Obtém ou define a hora de criação, em UTC (tempo universal coordenado), do arquivo ou diretório atual. |
Exists |
Obtém um valor que indica se o arquivo ou o diretório existe. |
Extension |
Obtém a parte de extensão do nome do arquivo, incluindo o ponto |
FullName |
Obtém o caminho completo do diretório ou arquivo. |
LastAccessTime |
Obtém ou define a hora em que o arquivo ou o diretório atual foi acessado pela última vez. |
LastAccessTimeUtc |
Obtém ou define a hora, no UTC (Tempo Universal Coordenado), em que o arquivo ou diretório atual foi acessado pela última vez. |
LastWriteTime |
Obtém ou define a hora em que o arquivo ou o diretório atual foi usado para gravação pela última vez. |
LastWriteTimeUtc |
Obtém ou define a hora, em UTC (Tempo Universal Coordenado), em que o arquivo ou diretório atual foi gravado pela última vez. |
LinkTarget |
Obtém o caminho de destino do link localizado em FullNameou |
Name |
Para arquivos, obtém o nome do arquivo. Para diretórios, obtém o nome do último diretório na hierarquia, se uma existir. Caso contrário, a propriedade |
UnixFileMode |
Obtém ou define o modo de arquivo unix para o arquivo ou diretório atual. |
Métodos
CreateAsSymbolicLink(String) |
Cria um link simbólico localizado em FullName que aponta para o especificado |
CreateObjRef(Type) |
Cria um objeto que contém todas as informações relevantes necessárias para gerar um proxy usado para se comunicar com um objeto remoto. (Herdado de MarshalByRefObject) |
Delete() |
Exclui um arquivo ou diretório. |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetLifetimeService() |
Obsoleto.
Recupera o objeto de serviço de tempo de vida atual que controla a política de ciclo de vida para esta instância. (Herdado de MarshalByRefObject) |
GetObjectData(SerializationInfo, StreamingContext) |
Obsoleto.
Define o objeto SerializationInfo com o nome do arquivo e informações adicionais de exceção. |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
InitializeLifetimeService() |
Obsoleto.
Obtém um objeto de serviço de tempo de vida para controlar a política de tempo de vida para essa instância. (Herdado de MarshalByRefObject) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
MemberwiseClone(Boolean) |
Cria uma cópia superficial do objeto MarshalByRefObject atual. (Herdado de MarshalByRefObject) |
Refresh() |
Atualiza o estado do objeto. |
ResolveLinkTarget(Boolean) |
Obtém o destino do link especificado. |
ToString() |
Retorna o caminho original. Use as propriedades FullName ou Name para o caminho completo ou o nome do arquivo/do diretório. |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |