Método File.Replace(String, String, String, Boolean) en C# con ejemplos

File.Replace(String, String, String, Boolean) es un método de clase de archivo incorporado que se usa para reemplazar el contenido de un archivo de destino específico con el contenido de un archivo de origen, luego elimina el archivo de origen, crea una copia de seguridad del reemplazado y, opcionalmente, ignora los errores de combinación.

Sintaxis:

public static void Reemplazar (string sourceFileName, string destinationFileName, string destinationBackupFileName, bool ignoreMetadataErrors); 
 

Parámetro: Esta función acepta cuatro parámetros que se ilustran a continuación:

  • sourceFileName: este es el archivo fuente especificado.
  • DestinationFileName: este es el archivo de destino especificado cuyo contenido se reemplaza con el contenido del archivo de origen.
  • DestinationBackupFileName: este archivo contiene la copia de seguridad del contenido del archivo de destino reemplazado.
  • ignoreMetadataErrors: este parámetro contiene un valor booleano, es decir, verdadero para ignorar los errores de combinación (como atributos y listas de control de acceso (ACL)) del archivo reemplazado al archivo de reemplazo; en caso contrario, falso.

Excepciones:
 

  • ArgumentException: la ruta descrita por el parámetro destinationFileName no tenía forma legal. O la ruta descrita por el parámetro DestinationBackupFileName no tenía forma legal.
  • ArgumentNullException: el parámetro destinationFileName es nulo.
  • DriveNotFoundException: se especificó una unidad no válida.
  • FileNotFoundException: no se pudo encontrar el archivo descrito por el objeto FileInfo actual. O no se pudo encontrar el archivo descrito por el parámetro DestinationBackupFileName .
  • IOException: se produjo un error de E/S al abrir el archivo. O los parámetros sourceFileName y destinationFileName especifican el mismo archivo.
  • PathTooLongException: la ruta especificada, el nombre de archivo o ambos superan la longitud máxima definida por el sistema.
  • PlatformNotSupportedException: el sistema operativo es Windows 98 Second Edition o anterior y el sistema de archivos no es NTFS.
  • UnauthorizedAccessException: el parámetro sourceFileName o destinationFileName especifica un archivo que es de solo lectura. O esta operación no es compatible con la plataforma actual. O los parámetros de origen o destino especifican un directorio en lugar de un archivo. O la persona que llama no tiene el permiso requerido.

A continuación se muestran los programas para ilustrar el método File.Replace(String, String, String, Boolean).
Programa 1: antes de ejecutar el siguiente código, se han creado tres archivos, donde el archivo de origen es file1.txt , el archivo de destino es file2.txt y el archivo de copia de seguridad es file3.txt . El contenido de estos archivos se muestra a continuación:
 

file1.txt

file2.txt

file3.txt

C#

// C# program to illustrate the usage
// of File.Replace(String, String,
// String, Boolean) method
  
// Using System and System.IO namespaces
using System;
using System.IO;
  
class GFG {
    public static void Main()
    {
        // Specifying 3 files
        string sourceFileName = "file1.txt";
        string destinationFileName = "file2.txt";
        string destinationBackupFileName = "file3.txt";
  
        // Calling the Replace() function
        File.Replace(sourceFileName, destinationFileName, 
                        destinationBackupFileName, true);
  
        Console.WriteLine("Replacement process has been done.");
    }
}

Producción: 
 

Replacement process has been done.

Después de ejecutar el código anterior, se muestra el resultado anterior, el archivo fuente se elimina y los contenidos de los dos archivos restantes se muestran a continuación:
 

file7.txt

file8.txt

Programa 2: antes de ejecutar el siguiente código, se han creado dos archivos, donde el archivo de origen es file1.txt , el archivo de destino es file2.txt y no hay un archivo de copia de seguridad porque no queremos mantener una copia de seguridad del archivo reemplazado. El contenido de estos archivos se muestra a continuación:
 

file1.txt

file2.txt

C#

// C# program to illustrate the usage
// of File.Replace(String, String, 
// String, Boolean) method
  
// Using System and System.IO namespaces
using System;
using System.IO;
  
class GFG {
    public static void Main()
    {
        // Specifying 2 files
        string sourceFileName = "file1.txt";
        string destinationFileName = "file2.txt";
  
        // Calling the Replace() function with
        // null parameter inplace of backup file because
        // we do not want to keep backup of the
        // replaced file.
        File.Replace(sourceFileName, destinationFileName,
                                            null, false);
  
        Console.WriteLine("Replacement process has been done.");
    }
}

Producción: 
 

Replacement process has been done.

Después de ejecutar el código anterior, se muestra el resultado anterior, el archivo de origen se elimina y el contenido del archivo de destino se muestra a continuación:
 

file2.txt

Publicación traducida automáticamente

Artículo escrito por Kanchan_Ray y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *