déc 04 2007

Resume file copy with Java

Published by Romain Bouleis at 0:55 under Developpement

Reprendre la copie d’un fichier en Java

Voici une petite fonction dont le but est de copier un fichier, et le résumer si il existe déjà. Cette solution est très basique, et son implémentation demanderai quelques contrôles supplémentaires comme par exemple s’assurer que la taille du fichier de destination ne soit pas supérieur à celle du fichier source. Voici donc cette fonction :


public class FileTransfert {

	public static void resume(File in, File out) throws IOException {
		FileInputStream fis  = new FileInputStream(in);
		FileOutputStream fos = new FileOutputStream(out,true);

		try {
			int i;
			byte[] buf = new byte[1024];
			fis.skip(out.length());
			while ((i = fis.read(buf)) != -1) {
				fos.write(buf,0, i);
				//System.out.println(out.length());
			}
		}
		catch (IOException e) {
			e.printStackTrace();
		}
		finally {
			if (fis != null)  fis.close();
			if (fos != null) fos.close();
		}
	}

	public static void main(String args[]) {
		try {
			resume(new File("/home/rb/test"), new File("/home/rb/test2"));
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}

Un peu plus sur les transferts de fichiers en Java ici .

2 responses so far

2 Responses to “Resume file copy with Java”

  1. Gerard BOURRIAUXon 20 avr 2008 at 18:30

    Salut Romain

    je recherchais de infos sur Java et je tombe sur ton blog.
    En espérant que tout va bien ?

    A +

  2. Snakeon 13 juil 2009 at 22:13

    C’est simple, clair et rapide. Que demander de plus ? Merci pour tout !

Trackback URI | Comments RSS

Leave a Reply