Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Importante
Este artigo documenta a implementação histórica e pré-padrão MSVC da Especificação Técnica do Sistema de Ficheiros que foi fornecida no <experimental/filesystem> cabeçalho. Não é a biblioteca C++17 std::filesystem . Esta experimental implementação foi removida a partir da versão 14.51 do MSVC. Para suporte atual ao sistema de ficheiros, use o cabeçalho C++17 <filesystem> e o std::filesystem namespace.
Use esta documentação apenas ao manter código mais antigo que inclua <experimental/filesystem> ou utilize o std::experimental::filesystem namespace. Os links de referência nesta página mantêm-se dentro dessa API histórica, a menos que estejam explicitamente identificados como documentação C++17 atual.
Antes do C++17 padronizar o suporte ao sistema de ficheiros, o MSVC incluía uma implementação pré-padrão da Especificação Técnica do Sistema de Ficheiros no <experimental/filesystem> cabeçalho, sob o std::experimental::filesystem namespace. Este artigo é mantido para referência histórica. O novo código deve usar o cabeçalho C++17 <filesystem> em vez disso.
Sintaxe
#include <experimental/filesystem> // Removed starting in MSVC version 14.51
using namespace std::experimental::filesystem::v1;
Histórico de versões do Visual Studio
- Quando o Visual Studio 2017 foi lançado, o cabeçalho C++17
<filesystem>ainda não estava padronizado. O C++ no Visual Studio 2017 implementou a Especificação Técnica do Sistema de Ficheiros pré-padrão no<experimental/filesystem>cabeçalho. - Visual Studio 2017 versão 15.7 e posteriormente adicionaram suporte para o novo padrão C++17
<filesystem>. Esta implementação em C++17 é completamente nova, incompatível com a versão anteriorstd::experimental. - No Visual Studio 2019 versão 16.3 e posteriores, including
<filesystem>fornece apenas o novostd::filesystem, e including<experimental/filesystem>fornece apenas a implementação antigaexperimental. - A experimental implementação foi removida a partir da versão 14.51 do MSVC Build Tools, que se tornou o conjunto de ferramentas padrão no Visual Studio 2026 versão 18.6.
Aulas
| Name | Descrição |
|---|---|
directory_entry Classe |
Descreve um objeto que é devolvido por a directory_iterator ou a recursive_directory_iterator e contém um path. |
directory_iterator Classe |
Descreve um iterador de entrada que sequencia os nomes dos ficheiros num diretório do sistema de ficheiros. |
filesystem_error Classe |
Uma classe base para exceções que são lançadas para reportar um erro de sistema de baixo nível. |
path Classe |
Define uma classe que armazena um objeto do tipo String template adequado para uso como nome de ficheiro. |
recursive_directory_iterator Classe |
Descreve um iterador de entrada que sequencia os nomes dos ficheiros num diretório do sistema de ficheiros. O iterador também pode descer para subdiretórios. |
file_status Classe |
Envolve um file_type. |
Estruturas
| Name | Descrição |
|---|---|
space_info Estrutura |
Contém informação sobre um volume. |
Funções
<experimental/filesystem> funções
Operators
<experimental/filesystem> Operadores
Enumerations
| Name | Descrição |
|---|---|
copy_options |
Uma enumeração que é usada com copy_file e determina o comportamento se já existir um ficheiro de destino. |
directory_options |
Uma enumeração que especifica opções para iteradores de diretórios. |
file_type |
Uma enumeração para tipos de ficheiros. |
perms |
Um tipo de máscara de bits usado para transmitir permissões e opções a permissões. |