Professional Documents
Culture Documents
MarshalByRefObject
(System)
DirectoryInfo FileInfo
(System.IO) (System.IO)
Você deve ter notado na lista mostrada que há duas classes usadas para
representar uma pasta e duas classes para representar um arquivo.
Qual delas você deve utilizar vai depender muito de quantas vezes você
precisa acessar o arquivo ou pasta.
Nome Descrição
CreationTime Momento em que o arquivo ou
pasta foi criada
DirectoryName (apenas na Caminho completo da pasta que
FileInfo) contém o arquivo
Parent (apenas na DirectoryInfo) A pasta pai da pasta especificada
Exists Se o arquivo ou pasta existe
Extension Extensão do arquivo, ou branco se
for pasta
FullName Caminho completo do arquivo ou
da pasta
LastAccessTime Última vez que o arquivo ou a
pasta foi acessada
LastWriteTime Última vez que o arquivo ou a
pasta foi modificada
Name O nome do arquivo ou da pasta
Root (apenas na DirectoryInfo) O diretório raiz (unidade) do
caminho para a pasta
Length (apenas na FileInfo) O tamanho do arquivo em bytes
Nome Função
Create() Cria uma pasta ou um arquivo
vazio com um nome dado como
parâmetro. Para um FileInfo esse
método retorna um objeto de
arquivo que permite que você
escreva nele (veremos isso mais à
frente).
Delete() Exclui o arquivo ou a pasta. Para
pastas há uma para exclusão de
todo o conteúdo (sub-pastas ou
somente o conteúdo da pasta
dada)
MoveTo() Move e/ou renomeia uma pasta ou
arquivo
CopyTo() (Apenas para FileInfo) Copia o
arquivo. Note que não há método
de cópia para pastas.
GetDirectories() (Apenas para DirectoryInfo)
Retorna um array de objetos
DirectoryInfo representando todas
as sub-pastas contidas em uma
pasta.
GetFiles() (Apenas para DirectoryInfo)
Retorna um array de objetos
FileInfo representando todos os
arquivos contidos em uma pasta.
GetFileSystemInfos() (Apenas para DirectoryInfo)
Retorna objetos FileInfo e
DirectoryInfo representando todos
os objetos (arquivos e pastas)
contidas em uma pasta, como um
array de referências do tipo
FileSystemInfo.
A classe Path
A classe Path não é uma classe instanciável. Ao invés disso, ela expõe
alguns métodos estáticos que fazem as operações com strings de
caminhos (de arquivos e pastas) mais fáceis.
Nome Função
Combine() Combina um caminho com um
nome de arquivo ou pasta
ChangeExtension() Modifica a extensão atual do
arquivo na string. Se nenhuma
extensão for especificada então a
extensão atual será removida.
GetDirectoryName() Retorna todos as informações de
uma pasta, a qual esteja
explicitada entre o primeiro e o
último caractere separador de
pastas (“\”)
GetFileName() Retorna apenas o pedaço do
caminho que é o nome do arquivo
GetFileNameWithouExtension() Retornar apenas o pedaço do
caminho que é o nome do arquivo
mas sem a extensão
GetFullPath() Transforma um caminho relativo
em caminho absoluto usando a
pasta atual como referência. Por
exemplo, se “c:\temp” é a pasta
atual, então chamar GetFullPath()
de um nome de arquivo como
“teste.txt” retornará
“c:\temp\teste.txt”.
GetPathRoot() Obtém uma string com a pasta raiz
(por exemplo, “c:\”) de um
caminho absoluto. Se o caminho
for relativo, retorna nulo (null)
HasExtension() Retorna true se o caminho termina
com uma extensão e false caso
contrário.
IsPathRooted() Retorna true se o caminho é
absoluto e false se for um caminho
relativo.
strCaminho = Path.GetFullPath(strCaminho);
//strCaminho agora contém a string “c:\temp”
Obs.: Na maioria dos casos, uma exceção será lançada se você utilizar
os métodos da classe Path com caminhos com caracteres inválidos.
Contudo, caracteres curingas (* ou ?) são aceitos se causar exceções.
Estudo de caso: Um navegador de arquivos
using System.IO;