Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/02/2012, 10:02
marroneti
 
Fecha de Ingreso: febrero-2012
Mensajes: 6
Antigüedad: 12 años, 2 meses
Puntos: 0
Unir ficheros

Hola a todos en mi primera intervención en este foro. Lo primero decirles que procedo de otro lenguaje de programación diferente y que soy un novato en esto del java, por lo que pido un poco de paciencia conmigo. Dicho esto expongo mi problema, estoy intentando unir varios ficheros (ficheros de formato tif en concreto) que paso por parámetro a un módulo java, el código que he hecho es el siguiente:


import java.io.*;


public class CopiaFicheros implements Serializable{

public static void main(String[] args) {
copia (args, "c:/ficheroDestino.TIF");
}

public static void copia (String[] ficheroOriginal, String ficheroCopia)
{
try
{
int contador = 0;

// Se abre el fichero donde se hará la copia
FileOutputStream fileOutput = new FileOutputStream (ficheroCopia, true);
BufferedOutputStream bufferedOutput = new BufferedOutputStream(fileOutput);
int leidos = 0;
int acumulado = 0;
int acumulado1 = 0;
while ( contador < ficheroOriginal.length )
{

System.out.println("FICHERO: "+ficheroOriginal[contador]);

// Se abre el fichero original para lectura

FileInputStream fileInput = new FileInputStream(ficheroOriginal[contador]);
BufferedInputStream bufferedInput = new BufferedInputStream(fileInput);

// Bucle para leer de un fichero y escribir en el otro.

byte [] array = new byte[1000];
leidos = bufferedInput.read(array);

while (leidos > 0)
{
bufferedOutput.write(array, 0,leidos);
leidos=bufferedInput.read(array);
acumulado = acumulado + leidos;
}
contador = contador + 1;
acumulado1 = acumulado;
// Cierre de los ficheros
bufferedOutput.flush();
bufferedInput.close();
}

bufferedOutput.close();

}
catch (Exception e)
{
e.printStackTrace();
}
}
}


El caso es que el resultado que obtengo es que solamente me copia el primero de los archivos, el resto nada de nada. Alguien que me pueda sacar de mi ignorancia?

Gracias por anticipado y un saludo