Código: Java
/**
* Clase que recibe 2 parametros por consola y realiza la copia
* del archivo de origen con el nombre designado para el archivo
* de destino.
*
* @author [D-m-K], Red Informatica Colombiana
*/
//Importo clases necesarias
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.PrintWriter;
public class Copia {
public static void main(String[] args) throws IOException{
//Rutas de origen y destino
String origen;
String destino;
try {
//Obtengo las rutas de origen y destino
origen = args[0];
destino = args[1];
//Creo los objtos de lectura y escritura
BufferedReader file_in = new BufferedReader(new FileReader(origen));
PrintWriter file_out = new PrintWriter(destino);
//Leo y escribo el archivo en la nueva linea
String linea;
int nlineas = 0;
while ((linea = file_in.readLine()) != null){
file_out.println(linea);
nlineas++;
}
//Vacio todos los buffer de salida y cierro el archivo
file_out.flush();
file_out.close();
//Muestro mensajes informativos
System.out.println(" El archivo [" + origen + "] ha sido copiado exitosamente a [" + destino + "].");
System.out.println(" Cantidad de lineas leidas : " + nlineas);
} catch (IndexOutOfBoundsException e) {
switch(args.length){
case 0:
System.err.println(" ERROR : Falta parametros [origen] [destino]");
break;
case 1:
System.err.println(" ERROR : Falta parametro [destino]");
break;
}
}catch (FileNotFoundException ex){
System.err.println(" ERROR : El archivo de origen no ha sido encontrado");
}finally{
System.err.println("\n Ejecucion terminada!!!");
}
}
}