std::experimental::filesystem:: copy_options
|
Definido en el encabezado
<experimental/filesystem>
|
||
|
enum
class
copy_options
{
none
=
0
,
|
(filesystem TS) | |
Este tipo representa las opciones disponibles que controlan el comportamiento de la copy() y la copy_file() función.
copy_options
satisface los requisitos de
BitmaskType
(lo que significa que los operadores bit a bit
operator
&
,
operator
|
,
operator
^
,
operator~
,
operator
&
=
,
operator
|
=
, y
operator
^
=
están definidos para este tipo).
Constantes de miembro
A lo sumo, una opción de copia en cada uno de los siguientes grupos de opciones puede estar presente; de lo contrario, el comportamiento de las funciones de copia es indefinido.
| Constante de miembro | Valor | Significado |
|---|---|---|
| Opciones que controlan copy_file() cuando el archivo ya existe | ||
none
|
0 | Reportar un error (comportamiento predeterminado). |
skip_existing
|
1 | Mantener el archivo existente, sin reportar un error. |
overwrite_existing
|
2 | Reemplazar el archivo existente. |
update_existing
|
4 | Reemplazar el archivo existente solo si es más antiguo que el archivo que se está copiando. |
| Opciones que controlan los efectos de copy() en subdirectorios | ||
none
|
0 | Omitir subdirectorios (comportamiento predeterminado). |
recursive
|
8 | Copiar recursivamente subdirectorios y su contenido. |
| Opciones que controlan los efectos de copy() en enlaces simbólicos | ||
none
|
0 | Seguir enlaces simbólicos (comportamiento predeterminado). |
copy_symlinks
|
16 | Copiar enlaces simbólicos como enlaces simbólicos, no como los archivos a los que apuntan. |
skip_symlinks
|
32 | Ignorar enlaces simbólicos. |
| Opciones que controlan el tipo de copia que realiza copy() | ||
none
|
0 | Copiar contenido de archivos (comportamiento predeterminado). |
directories_only
|
64 | Copiar la estructura de directorios, pero no copiar ningún archivo que no sea directorio. |
create_symlinks
|
128 | En lugar de crear copias de archivos, crear enlaces simbólicos que apunten a los originales. Nota: la ruta de origen debe ser una ruta absoluta a menos que la ruta de destino esté en el directorio actual. |
create_hard_links
|
256 | En lugar de crear copias de archivos, crear enlaces físicos que resuelvan a los mismos archivos que los originales. |
Ejemplo
#include <experimental/filesystem> #include <fstream> #include <iostream> namespace fs = std::experimental::filesystem; int main() { fs::create_directories("sandbox/dir/subdir"); std::ofstream("sandbox/file1.txt").put('a'); fs::copy("sandbox/file1.txt", "sandbox/file2.txt"); // copiar archivo fs::copy("sandbox/dir", "sandbox/dir2"); // copiar directorio (no recursivo) // sandbox contiene 2 archivos y 2 directorios, uno de los cuales tiene un subdirectorio // sandbox/file1.txt // sandbox/file2.txt // sandbox/dir2 // sandbox/dir // sandbox/dir/subdir fs::copy("sandbox", "sandbox/copy", fs::copy_options::recursive); // sandbox/copy contiene copias de los archivos y subdirectorios anteriores fs::remove_all("sandbox"); }
Véase también
|
copia archivos o directorios
(función) |
|
|
copia contenidos de archivos
(función) |