Cómo copiar archivos en c ++

Ah, la copia de un archivo - algo tan simple, que pasa todo el tiempo. Copiar este archivo allí- copiar ese archivo aquí. Pero lo que ocurre exactamente su lugar cuando se copia un archivo? En realidad se crea una nuevo presentar, y llenarlo con el mismo contenido que el archivo original. ¿Y cómo haces eso?

Video: 32 - Tutorial de C++ en español - copy_file (Copiar archivo a un destino)

Bueno, parece que usted tiene que leer todos y cada uno de bytes desde el primer archivo, y lo escribe a la segunda. asco gran tiempo.

Pero para empeorar las cosas, la copia de un archivo significa que tiene que asegurarse de que copia exactamente la misma, que no accidentalmente virar un extra de 0 o dos al final del archivo, o un retorno de carro o salto de línea adicional en al final del archivo (que podría suceder cuando se copia un archivo de texto).

Cuando todo está hecho, los dos archivos deben ser idénticos - no sólo contiene la misma información, sino también ser el mismo tamaño.

Y encima de todo eso, la mayoría de las buenas rutinas de copia hacen aún más! Ellos dan el nuevo archivo de una fecha que coincide con la fecha del archivo original, y van a establecer todos los atributos - incluyendo, por ejemplo, de sólo lectura si el original es un archivo de sólo lectura. (Si es de sólo lectura del archivo, entonces tal vez debería no ser capaz de copiarlo en el primer lugar.. ..)

Video: Bloque 8.2: Ejemplo Leer de fichero y meter datos en Estructura

De repente, la copia de un archivo no suena tan fácil después de todo!

Si está programando en Windows, estás de suerte! Siempre y cuando no se esté usando el antiguo Windows 3.1, se obtiene una Copiar archivo ¡función! Para estar listo para usarlo, se incluye la línea #incluir en su aplicación. Entonces esto es todo lo que tiene que hacer:

Copiar archivo("c: /dog.txt", "c: /dog2.txt", CIERTO)-

Esto copia de c: /dog.txt a c: /dog2.txt. Notar el parámetro final: Es la palabra CIERTO en todas las capitales. ¿Que es eso? Eso es una macro preprocesador definido en algún lugar de las entrañas de los archivos de encabezado de Windows.

Usted tiene que utilizar CIERTO o FALSO cuando se llama a cualquiera de las funciones de Windows. Eso es debido a que en los viejos tiempos de C, cuando se inventaron las versiones antiguas de Windows, sin bool Tipo existía. Aquellas personas con recursos de finales del siglo 20 tuvieron que definir su propio CIERTO y FALSO como enteros (por lo general o bien 1 y 0, respectivamente, o 0 y 1, respectivamente).

Y, por cierto, que el parámetro final en Copiar archivo indica a la función qué hacer si el archivo que está copiando a ya existe: CIERTO medios no sobrescribir el archivo- existente simplemente abortar. FALSO significa reescribir.

Artículos Relacionados