File 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 métodos estáticos para a criação, cópia, exclusão, movimentação e abertura de um único arquivo e auxilia na criação de FileStream objetos.
public ref class File abstract sealed
public ref class File sealed
public static class File
public sealed class File
[System.Runtime.InteropServices.ComVisible(true)]
public static class File
type File = class
[<System.Runtime.InteropServices.ComVisible(true)>]
type File = class
Public Class File
Public NotInheritable Class File
- Herança
-
File
- Atributos
Exemplos
O exemplo a seguir demonstra como usar a File classe para verificar se um arquivo existe e, dependendo do resultado, crie um novo arquivo e escreva nele ou abra o arquivo existente e leia-o. Antes de executar o código, crie uma c:\temp pasta.
using System;
using System.IO;
class Test
{
public static void Main()
{
string path = @"c:\temp\MyTest.txt";
if (!File.Exists(path))
{
// Create a file to write to.
using (StreamWriter sw = File.CreateText(path))
{
sw.WriteLine("Hello");
sw.WriteLine("And");
sw.WriteLine("Welcome");
}
}
// Open the file to read from.
using (StreamReader sr = File.OpenText(path))
{
string s;
while ((s = sr.ReadLine()) != null)
{
Console.WriteLine(s);
}
}
}
}
open System.IO
let path = @"c:\temp\MyTest.txt"
if File.Exists path |> not then
// Create a file to write to.
use sw = File.CreateText path
sw.WriteLine "Hello"
sw.WriteLine "And"
sw.WriteLine "Welcome"
// Open the file to read from.
do
use sr = File.OpenText path
let mutable s = sr.ReadLine()
while isNull s |> not do
printfn $"{s}"
s <- sr.ReadLine()
Imports System.IO
Public Class Test
Public Shared Sub Main()
Dim path As String = "c:\temp\MyTest.txt"
If File.Exists(path) = False Then
' Create a file to write to.
Using sw As StreamWriter = File.CreateText(path)
sw.WriteLine("Hello")
sw.WriteLine("And")
sw.WriteLine("Welcome")
End Using
End If
' Open the file to read from.
Using sr As StreamReader = File.OpenText(path)
Do While sr.Peek() >= 0
Console.WriteLine(sr.ReadLine())
Loop
End Using
End Sub
End Class
Comentários
Use a File classe para operações típicas, como copiar, mover, renomear, criar, abrir, excluir e acrescentar a um único arquivo de cada vez. Você também pode usar a File classe para obter e definir atributos de arquivo ou DateTime informações relacionadas à criação, acesso e gravação de um arquivo. Se você quiser executar operações em vários arquivos, consulte Directory.GetFiles ou DirectoryInfo.GetFiles.
Muitos dos File métodos retornam outros tipos de E/S quando você cria ou abre arquivos. Você pode usar esses outros tipos para manipular ainda mais um arquivo. Para obter mais informações, consulte membros específicos File , como OpenText, CreateTextou Create.
Como todos os File métodos são estáticos, se você quiser executar apenas uma ação, talvez seja mais eficiente usar um File método do que um método de instância correspondente FileInfo . Todos os File métodos exigem o caminho para o arquivo que você está manipulando.
Os métodos estáticos da File classe executam verificações de segurança em todos os métodos. Se você quiser reutilizar um objeto várias vezes, considere usar o método de instância correspondente, FileInfo pois a verificação de segurança nem sempre será necessária.
Por padrão, o acesso completo de leitura/gravação a novos arquivos é concedido a todos os usuários.
A tabela a seguir descreve as enumerações usadas para personalizar o comportamento de vários File métodos.
| Enumeration | Descrição |
|---|---|
| FileAccess | Especifica o acesso de leitura e gravação a um arquivo. |
| FileShare | Especifica o nível de acesso permitido para um arquivo que já está em uso. |
| FileMode | Especifica se o conteúdo de um arquivo existente é preservado ou substituído e se as solicitações para criar um arquivo existente causam uma exceção. |
Note
Em membros que aceitam um caminho como uma cadeia de caracteres de entrada, esse caminho deve ser bem formado ou uma exceção é gerada. Por exemplo, se um caminho for totalmente qualificado, mas começar com um espaço, o caminho não será cortado em métodos da classe. Portanto, o caminho é malformado e uma exceção é gerada. Da mesma forma, um caminho ou uma combinação de caminhos não pode ser totalmente qualificado duas vezes. Por exemplo, "c:\temp c:\windows" também gera uma exceção na maioria dos casos. Verifique se os caminhos estão bem formados ao usar métodos que aceitam uma cadeia de caracteres de caminho.
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 são caminhos 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.
Métodos
| Nome | Description |
|---|---|
| AppendAllLines(String, IEnumerable<String>, Encoding) |
Acrescenta linhas a um arquivo usando uma codificação especificada e fecha o arquivo. Se o arquivo especificado não existir, esse método criará um arquivo, gravará as linhas especificadas no arquivo e fechará o arquivo. |
| AppendAllLines(String, IEnumerable<String>) |
Acrescenta linhas a um arquivo e fecha o arquivo. Se o arquivo especificado não existir, esse método criará um arquivo, gravará as linhas especificadas no arquivo e fechará o arquivo. |
| AppendAllLinesAsync(String, IEnumerable<String>, CancellationToken) |
Acrescenta as linhas de forma assíncrona a um arquivo e fecha o arquivo. Se o arquivo especificado não existir, esse método criará um arquivo, gravará as linhas especificadas no arquivo e fechará o arquivo. |
| AppendAllLinesAsync(String, IEnumerable<String>, Encoding, CancellationToken) |
Acrescenta as linhas de forma assíncrona a um arquivo usando uma codificação especificada e fecha o arquivo. Se o arquivo especificado não existir, esse método criará um arquivo, gravará as linhas especificadas no arquivo e fechará o arquivo. |
| AppendAllText(String, String, Encoding) |
Acrescenta a cadeia de caracteres especificada ao arquivo usando a codificação especificada, criando o arquivo se ele ainda não existir. |
| AppendAllText(String, String) |
Abre um arquivo, acrescenta a cadeia de caracteres especificada ao arquivo e fecha o arquivo. Se o arquivo não existir, esse método criará um arquivo, gravará a cadeia de caracteres especificada no arquivo e fechará o arquivo. |
| AppendAllTextAsync(String, String, CancellationToken) |
Abre um arquivo de forma assíncrona ou cria um arquivo se ele ainda não existir, acrescenta a cadeia de caracteres especificada ao arquivo e fecha o arquivo. |
| AppendAllTextAsync(String, String, Encoding, CancellationToken) |
Abre um arquivo de forma assíncrona ou cria o arquivo se ele ainda não existir, acrescenta a cadeia de caracteres especificada ao arquivo usando a codificação especificada e fecha o arquivo. |
| AppendText(String) |
Cria um StreamWriter que acrescenta texto codificado em UTF-8 a um arquivo existente ou a um novo arquivo se o arquivo especificado não existir. |
| Copy(String, String, Boolean) |
Copia um arquivo existente para um novo arquivo. A substituição de um arquivo com o mesmo nome é permitida. |
| Copy(String, String) |
Copia um arquivo existente para um novo arquivo. Não é permitido substituir um arquivo com o mesmo nome. |
| Create(String, Int32, FileOptions, FileSecurity) |
Cria ou substitui um arquivo no caminho especificado, especificando um tamanho de buffer, opções que descrevem como criar ou substituir o arquivo e um valor que determina o controle de acesso e a segurança de auditoria do arquivo. |
| Create(String, Int32, FileOptions) |
Cria ou substitui um arquivo no caminho especificado, especificando um tamanho de buffer e opções que descrevem como criar ou substituir o arquivo. |
| Create(String, Int32) |
Cria ou trunca e substitui um arquivo no caminho especificado, especificando um tamanho de buffer. |
| Create(String) |
Cria ou trunca e substitui um arquivo no caminho especificado. |
| CreateText(String) |
Cria ou abre um arquivo para gravar texto codificado em UTF-8. Se o arquivo já existir, seu conteúdo será substituído. |
| Decrypt(String) |
Descriptografa um arquivo que foi criptografado pela conta atual usando o Encrypt(String) método. |
| Delete(String) |
Exclui o arquivo especificado. |
| Encrypt(String) |
Criptografa um arquivo para que somente a conta usada para criptografar o arquivo possa descriptografá-lo. |
| Exists(String) |
Determina se o arquivo especificado existe. |
| GetAccessControl(String, AccessControlSections) |
Obtém um FileSecurity objeto que encapsula o tipo especificado de entradas acl (lista de controle de acesso) para um arquivo específico. |
| GetAccessControl(String) |
Obtém um FileSecurity objeto que encapsula as entradas de ACL (lista de controle de acesso) para um arquivo especificado. |
| GetAttributes(String) |
Obtém o FileAttributes arquivo no caminho. |
| GetCreationTime(String) |
Retorna a data e a hora de criação do arquivo ou diretório especificado. |
| GetCreationTimeUtc(String) |
Retorna a data e a hora de criação, em UTC (Tempo Universal Coordenado), do arquivo ou diretório especificado. |
| GetLastAccessTime(String) |
Retorna a data e a hora em que o arquivo ou diretório especificado foi acessado pela última vez. |
| GetLastAccessTimeUtc(String) |
Retorna a data e a hora, em UTC (Tempo Universal Coordenado), que o arquivo ou diretório especificado foi acessado pela última vez. |
| GetLastWriteTime(String) |
Retorna a data e a hora em que o arquivo ou diretório especificado foi gravado pela última vez. |
| GetLastWriteTimeUtc(String) |
Retorna a data e a hora, em UTC (Tempo Universal Coordenado), em que o arquivo ou diretório especificado foi gravado pela última vez. |
| Move(String, String) |
Move um arquivo especificado para um novo local, fornecendo a opção para especificar um novo nome de arquivo. |
| Open(String, FileMode, FileAccess, FileShare) |
Abre um FileStream no caminho especificado, tendo o modo especificado com acesso de leitura, gravação ou leitura/gravação e a opção de compartilhamento especificada. |
| Open(String, FileMode, FileAccess) |
Abre um FileStream no caminho especificado, com o modo e o acesso especificados sem compartilhamento. |
| Open(String, FileMode) |
Abre um FileStream no caminho especificado com acesso de leitura/gravação sem compartilhamento. |
| OpenRead(String) |
Abre um arquivo existente para leitura. |
| OpenText(String) |
Abre um arquivo de texto codificado em UTF-8 existente para leitura. |
| OpenWrite(String) |
Abre um arquivo existente ou cria um novo arquivo para gravação. |
| ReadAllBytes(String) |
Abre um arquivo binário, lê o conteúdo do arquivo em uma matriz de bytes e fecha o arquivo. |
| ReadAllBytesAsync(String, CancellationToken) |
Abre um arquivo binário de forma assíncrona, lê o conteúdo do arquivo em uma matriz de bytes e fecha o arquivo. |
| ReadAllLines(String, Encoding) |
Abre um arquivo, lê todas as linhas do arquivo com a codificação especificada e fecha o arquivo. |
| ReadAllLines(String) |
Abre um arquivo de texto, lê todas as linhas do arquivo e fecha o arquivo. |
| ReadAllLinesAsync(String, CancellationToken) |
Abre um arquivo de texto de forma assíncrona, lê todas as linhas do arquivo e fecha o arquivo. |
| ReadAllLinesAsync(String, Encoding, CancellationToken) |
Abre um arquivo de texto de forma assíncrona, lê todas as linhas do arquivo com a codificação especificada e fecha o arquivo. |
| ReadAllText(String, Encoding) |
Abre um arquivo, lê todo o texto no arquivo com a codificação especificada e fecha o arquivo. |
| ReadAllText(String) |
Abre um arquivo de texto, lê todo o texto no arquivo e fecha o arquivo. |
| ReadAllTextAsync(String, CancellationToken) |
Abre um arquivo de texto de forma assíncrona, lê todo o texto no arquivo e fecha o arquivo. |
| ReadAllTextAsync(String, Encoding, CancellationToken) |
Abre um arquivo de texto de forma assíncrona, lê todo o texto no arquivo com a codificação especificada e fecha o arquivo. |
| ReadLines(String, Encoding) |
Leia as linhas de um arquivo que tem uma codificação especificada. |
| ReadLines(String) |
Lê as linhas de um arquivo. |
| Replace(String, String, String, Boolean) |
Substitui o conteúdo de um arquivo especificado pelo conteúdo de outro arquivo, excluindo o arquivo original e criando um backup do arquivo substituído e, opcionalmente, ignora erros de mesclagem. |
| Replace(String, String, String) |
Substitui o conteúdo de um arquivo especificado pelo conteúdo de outro arquivo, excluindo o arquivo original e criando um backup do arquivo substituído. |
| SetAccessControl(String, FileSecurity) |
Aplica entradas acl (lista de controle de acesso) descritas por um FileSecurity objeto ao arquivo especificado. |
| SetAttributes(String, FileAttributes) |
Define o arquivo especificado FileAttributes no caminho especificado. |
| SetCreationTime(String, DateTime) |
Define a data e a hora em que o arquivo foi criado. |
| SetCreationTimeUtc(String, DateTime) |
Define a data e a hora, em UTC (Tempo Universal Coordenado), que o arquivo foi criado. |
| SetLastAccessTime(String, DateTime) |
Define a data e a hora em que o arquivo especificado foi acessado pela última vez. |
| SetLastAccessTimeUtc(String, DateTime) |
Define a data e a hora, em UTC (Tempo Universal Coordenado), que o arquivo especificado foi acessado pela última vez. |
| SetLastWriteTime(String, DateTime) |
Define a data e a hora em que o arquivo especificado foi gravado pela última vez. |
| SetLastWriteTimeUtc(String, DateTime) |
Define a data e a hora, em UTC (Tempo Universal Coordenado), em que o arquivo especificado foi gravado pela última vez. |
| WriteAllBytes(String, Byte[]) |
Cria um novo arquivo, grava a matriz de bytes especificada no arquivo e fecha o arquivo. Se o arquivo de destino já existir, ele será truncado e substituído. |
| WriteAllBytesAsync(String, Byte[], CancellationToken) |
Cria um novo arquivo de forma assíncrona, grava a matriz de bytes especificada no arquivo e fecha o arquivo. Se o arquivo de destino já existir, ele será truncado e substituído. |
| WriteAllLines(String, IEnumerable<String>, Encoding) |
Cria um novo arquivo usando a codificação especificada, grava uma coleção de cadeias de caracteres no arquivo e fecha o arquivo. |
| WriteAllLines(String, IEnumerable<String>) |
Cria um novo arquivo, grava uma coleção de cadeias de caracteres no arquivo e fecha o arquivo. |
| WriteAllLines(String, String[], Encoding) |
Cria um novo arquivo, grava a matriz de cadeia de caracteres especificada no arquivo usando a codificação especificada e fecha o arquivo. |
| WriteAllLines(String, String[]) |
Cria um novo arquivo, grava a matriz de cadeia de caracteres especificada no arquivo e fecha o arquivo. |
| WriteAllLinesAsync(String, IEnumerable<String>, CancellationToken) |
Cria um novo arquivo de forma assíncrona, grava as linhas especificadas no arquivo e fecha o arquivo. |
| WriteAllLinesAsync(String, IEnumerable<String>, Encoding, CancellationToken) |
Cria um novo arquivo de forma assíncrona, grava as linhas especificadas no arquivo usando a codificação especificada e fecha o arquivo. |
| WriteAllText(String, String, Encoding) |
Cria um novo arquivo, grava a cadeia de caracteres especificada no arquivo usando a codificação especificada e fecha o arquivo. Se o arquivo de destino já existir, ele será truncado e substituído. |
| WriteAllText(String, String) |
Cria um novo arquivo, grava a cadeia de caracteres especificada no arquivo e fecha o arquivo. Se o arquivo de destino já existir, ele será truncado e substituído. |
| WriteAllTextAsync(String, String, CancellationToken) |
Cria um novo arquivo de forma assíncrona, grava a cadeia de caracteres especificada no arquivo e fecha o arquivo. Se o arquivo de destino já existir, ele será truncado e substituído. |
| WriteAllTextAsync(String, String, Encoding, CancellationToken) |
Cria um novo arquivo de forma assíncrona, grava a cadeia de caracteres especificada no arquivo usando a codificação especificada e fecha o arquivo. Se o arquivo de destino já existir, ele será truncado e substituído. |