Copiar un fichero en otro
Intento copiar el contenido de un fichero en otro con el siguiente código pero siempre me salta la FileNotFoundException. ¿ Me pueden echar una mano? Gracias
public void Copia( String origen, String destino ) throws IOException
{
FileReader fr=null;
FileWriter fw=null;
try
{
fr=new FileReader( origen );
fw=new FileWriter( destino );
}
catch ( FileNotFoundException fnfe )
{
System.err.println( " No se ha encontrado el fichero " );
}
catch ( SecurityException se )
{
System.err.println( " No tiene permiso de lectura y/o escritura " );
}
BufferedReader br=new BufferedReader( fr );
BufferedWriter bw=new BufferedWriter( fw );
String cadena;
while ( br.readLine()!=null )
{
cadena=br.readLine();
bw.write(cadena);
}
br.close();
bw.close();
}
public void Copia( String origen, String destino ) throws IOException
{
FileReader fr=null;
FileWriter fw=null;
try
{
fr=new FileReader( origen );
fw=new FileWriter( destino );
}
catch ( FileNotFoundException fnfe )
{
System.err.println( " No se ha encontrado el fichero " );
}
catch ( SecurityException se )
{
System.err.println( " No tiene permiso de lectura y/o escritura " );
}
BufferedReader br=new BufferedReader( fr );
BufferedWriter bw=new BufferedWriter( fw );
String cadena;
while ( br.readLine()!=null )
{
cadena=br.readLine();
bw.write(cadena);
}
br.close();
bw.close();
}
Hola:
Para comprobar que no es problema del código, prueba a pasar un fichero con su path completo.
Se bueno.
Para comprobar que no es problema del código, prueba a pasar un fichero con su path completo.
Se bueno.
public static void copia(String nombreFuente, String nombreDestino) throws IOException {
FileInputStream fis = new FileInputStream(nombreFuente);
FileOutputStream fos = new FileOutputStream(nombreDestino);
FileChannel canalFuente = fis.getChannel();
FileChannel canalDestino = fos.getChannel();
canalFuente.transferTo(0, canalFuente.size(), canalDestino);
fis.close();
fos.close();
}
Este código lo he encontrado por ahí, espero que te sirva.
FileInputStream fis = new FileInputStream(nombreFuente);
FileOutputStream fos = new FileOutputStream(nombreDestino);
FileChannel canalFuente = fis.getChannel();
FileChannel canalDestino = fos.getChannel();
canalFuente.transferTo(0, canalFuente.size(), canalDestino);
fis.close();
fos.close();
}
Este código lo he encontrado por ahí, espero que te sirva.