Partilhar via


How to: Criar um Arquivo ou Pasta (guia de programação C#)

Este exemplo cria uma pasta e uma subpasta em um computador e cria um novo arquivo na subpasta e grava alguns dados no arquivo.

Exemplo

public class CreateFileOrFolder
{
    static void Main()
    {
        // Specify a "currently active folder"
        string activeDir = @"c:\testdir2";

        //Create a new subfolder under the current active folder
        string newPath = System.IO.Path.Combine(activeDir, "mySubDir");

        // Create the subfolder
        System.IO.Directory.CreateDirectory(newPath);

        // Create a new file name. This example generates
        // a random string.
        string newFileName = System.IO.Path.GetRandomFileName();

        // Combine the new file name with the path
        newPath = System.IO.Path.Combine(newPath, newFileName);

        // Create the file and write to it.
        // DANGER: System.IO.File.Create will overwrite the file
        // if it already exists. This can occur even with
        // random file names.
        if (!System.IO.File.Exists(newPath))
        {
            using (System.IO.FileStream fs = System.IO.File.Create(newPath))
            {
                for (byte i = 0; i < 100; i++)
                {
                    fs.WriteByte(i);
                }
            }
        }

        // Read data back from the file to prove
        // that the previous code worked.
        try
        {
            byte[] readBuffer = System.IO.File.ReadAllBytes(newPath);
            foreach (byte b in readBuffer)
            {
                Console.WriteLine(b);
            }
        }
        catch (System.IO.IOException e)
        {
            Console.WriteLine(e.Message);
        }

        // Keep the console window open in debug mode.
        System.Console.WriteLine("Press any key to exit.");
        System.Console.ReadKey();
    }
}

Se a pasta já existe, CreateDirectory faz nada e nenhuma exceção é acionada. No entanto, File.Create sobrescrever qualquer arquivo existente. Para evitar a substituição de um arquivo existente, você pode usar o OpenWrite método e especificar o FileMode.OpenOrCreate opção fará com que o arquivo a ser anexado em vez de sobrescrito.

As seguintes condições podem causar uma exceção:

  • O nome da pasta está malformado. Por exemplo, ele contém caracteres inválidos ou é somente espaço branco (ArgumentException classe). Use a classe Path para criar nomes de caminho válido.

  • A pasta pai da pasta a ser criado é somente leitura (IOException classe).

  • O nome da pasta é null (ArgumentNullException classe).

  • O nome da pasta é muito longo (PathTooLongException classe).

  • O nome da pasta é apenas um dois-pontos, ":" (PathTooLongException class).

Segurança

Uma instância de SecurityException classe pode ser lançada em situações de confiança parcial.

Se o usuário não tem permissão para criar a pasta, o exemplo lança uma instância de UnauthorizedAccessException classe.

Consulte também

Referência

System.IO

Conceitos

C# Programming Guide

Outros recursos

Arquivo O registro (C# guia de programação) e do sistema