Ejercicio
Copiador De Archivos
Objectivo
Cree un programa para copiar un archivo de origen en un archivo de destino. Debe utilizar FileStream y un tamaño de bloque de 512 Kb. Un ejemplo de uso podría ser:
archivo mycopy.txt e:file2.txt
Debe comportarse correctamente si el archivo de origen no existe y debe advertir (pero no sobrescribirlo) si el archivo de destino existe
Ejemplo Ejercicio C#
Mostrar Código C#
// Import the necessary namespaces for file handling
using System;
using System.IO;
class FileCopier
{
// Main method where the program starts
static void Main(string[] args)
{
// Check if the user has provided the correct number of arguments
if (args.Length != 2)
{
Console.WriteLine("Usage: mycopy ");
return;
}
// Get the source and destination file paths from the command line arguments
string sourceFile = args[0];
string destinationFile = args[1];
// Check if the source file exists
if (!File.Exists(sourceFile))
{
Console.WriteLine("Error: The source file does not exist.");
return;
}
// Check if the destination file already exists
if (File.Exists(destinationFile))
{
Console.WriteLine("Warning: The destination file already exists. It will not be overwritten.");
return;
}
try
{
// Open the source file for reading
using (FileStream sourceStream = new FileStream(sourceFile, FileMode.Open, FileAccess.Read))
{
// Open the destination file for writing
using (FileStream destStream = new FileStream(destinationFile, FileMode.Create, FileAccess.Write))
{
// Set the block size to 512 KB
byte[] buffer = new byte[512 * 1024]; // 512 KB
int bytesRead;
// Read from the source file and write to the destination file in blocks of 512 KB
while ((bytesRead = sourceStream.Read(buffer, 0, buffer.Length)) > 0)
{
destStream.Write(buffer, 0, bytesRead);
}
Console.WriteLine("File copied successfully.");
}
}
}
catch (Exception ex)
{
// Catch any errors that occur during file operations
Console.WriteLine("An error occurred while copying the file: " + ex.Message);
}
}
}
Salida
Command-Line Example:
mycopy source.txt destination.txt
Scenario 1 - File Copy Success: If the program successfully copies the file, the output will be:
File copied successfully.
Scenario 2 - Source File Doesn’t Exist: If the source file does not exist, the output will be:
Error: The source file does not exist.
Scenario 3 - Destination File Already Exists: If the destination file already exists, the output will be:
Warning: The destination file already exists. It will not be overwritten.
Scenario 4 - Other Errors: If any other error occurs (e.g., permission issues), the output will be:
An error occurred while copying the file: [Error Message]
Código de Ejemplo Copiado!
Comparte este Ejercicio C# Sharp
¡Explora nuestro conjunto de ejercicios de programación C# Sharp! Estos ejercicios, diseñados específicamente para principiantes, te ayudarán a desarrollar una sólida comprensión de los conceptos básicos de C#. Desde variables y tipos de datos hasta estructuras de control y funciones simples, cada ejercicio está diseñado para desafiarte de manera gradual a medida que adquieres confianza en la codificación en C#.
Este ejercicio en C# trata sobre las especificaciones ID3, que se aplican a cualquier archivo o contenedor audiovisual, pero se utilizan principalmente con contenedor...
Este ejercicio consiste en crear un programa que convierta programas simples en C a C#, como el siguiente ejemplo, asegurando que el programa resultante compil...
Este ejercicio consiste en crear un programa que divida un archivo (de cualquier tipo) en partes de un tamaño específico. El programa debe recibir como parámetros el nombre ...
Este ejercicio consiste en crear un programa que encripte y desencripte un archivo de imagen BMP cambiando la marca "BM" en los primeros dos bytes a "MB" y viceversa. Para e...
Este ejercicio consiste en crear un programa que lea un archivo CSV con cuatro bloques de datos separados por comas (tres de texto y uno numérico) y genere un archivo de tex...
Este ejercicio consiste en crear un programa en C# que determine si dos archivos (de cualquier tipo) son idénticos, es decir, si tienen el mismo contenido. El ...