Copier des fichiers

Contenu du snippet

Cette classe permet de copier des fichiers. De plus on peut définir des objets de ce type qui permettrons les mêmes manipulation que sur un fichier normal(File).

Source / Exemple :


import java.io.*;
import java.net.*;

public class CopieFile extends File {

	public CopieFile(String pathname) {
		super(pathname);
	}

	public CopieFile(String parent, String child) {
		super(parent, child);
	}

	public CopieFile(File parent, String child) {
		super(parent, child);
	}

	public CopieFile(URI uri) {
		super(uri);
	}
	
	/**

  • Cette méthode fait une copie par lot de la taille spécifier en octet.<br>
  • Vous pouver également utiliser la fonction copier()
  • qui fait une copie par lot de 10 Ko.<br>
  • Le fichier copier aura le nom de copie de [fichier à copier].
  • @param tailleCopie C'est la taille du lot de copie.
  • @throws IOException
  • @see <b>copier</b>(<b>File</b> ficLu,<b>File</b> ficEcrit [,<b>int</b> tailleCopie)
  • @see <b>copier</b>(<b>String</b> ficLu,<b>String</b> ficEcrit [,<b>int</b> tailleCopie)
  • @see <b>copier</b>()
  • @see <b>copier</b>(<b>File</b> ficEcrit [,<b>int</b> tailleCopie])
  • @see <b>copier</b>(<b>String</b> ficEcrit [,<b>int</b> tailleCopie])
  • /
public void copier(int tailleCopie) throws IOException{ File ficEcrit = new File( this.getPath()+File.separatorChar+"Copie de "+this.getName()); this.copier(ficEcrit,tailleCopie); } /**
  • Cette méthode fait une copie par lot de 10 Ko.<br>
  • Pour fair une copie par lot de taille différentes,
  • utilisez la fonction copier(int tailleCopie).<br>
  • Le fichier copier aura le nom de copie de [fichier à copier].
*
  • @throws IOException
  • @see <b>copier</b>(<b>File</b> ficLu,<b>File</b> ficEcrit [,<b>int</b> tailleCopie])
  • @see <b>copier</b>(<b>String</b> ficLu,<b>String</b> ficEcrit [,<b>int</b> tailleCopie])
  • @see <b>copier</b>(<b>File</b> ficEcrit [,<b>int</b> tailleCopie])
  • @see <b>copier</b>(<b>int</b> tailleCopie)
  • @see <b>copier</b>(<b>String</b> ficEcrit [,<b>int</b> tailleCopie])
  • /
public void copier() throws IOException{ this.copier(10240); } /**
  • Cette méthode permet de copier le fichier le fichier courant
  • dans un fichier définit par ficEcrit.<br>
  • Elle permet aussi de choisir la taille du lot de copie
  • @param ficEcrit Définit le fichier dans lequel copier.
  • @param tailleCopie Définit la taille du lot de copie.
  • @throws IOException
  • @see <b>copier</b>(<b>File</b> ficLu,<b>File</b> ficEcrit [,<b>int</b> tailleCopie])
  • @see <b>copier</b>(<b>String</b> ficLu,<b>String</b> ficEcrit [,<b>int</b> tailleCopie])
  • @see <b>copier</b>([<b>int</b> tailleCopie])
  • @see <b>copier</b>(<b>String</b> ficEcrit [,<b>int</b> tailleCopie])
  • /
public void copier(File ficEcrit, int tailleCopie) throws IOException{ CopieFile.copier(this,ficEcrit,tailleCopie); } /**
  • Cette méthode permet de copier le fichier courant
  • vers le fichier ficEcrit définit par une chaine.<br>
  • Elle permet aussi de choisir la taille du lot de copie.
  • @param ficEcrit Définit le fichier dans lequel faire la copie.
  • @param tailleCopie Définit la taille du lot de copie.
  • @throws IOException
  • @see <b>copier</b>(<b>File</b> ficLu,<b>File</b> ficEcrit [,<b>int</b> tailleCopie])
  • @see <b>copier</b>(<b>String</b> ficLu,<b>String</b> ficEcrit [,<b>int</b> tailleCopie])
  • @see <b>copier</b>(<b>File</b> ficEcrit [,<b>int</b> tailleCopie])
  • @see <b>copier</b>([<b>int</b> tailleCopie])
  • /
public void copier(String ficEcrit, int tailleCopie) throws IOException{ File fficEcrit = new File(ficEcrit); this.copier(fficEcrit,tailleCopie); } /**
  • Cette classe static permet de copier un fichier ficLu vers un fichier ficEcrit.<br>
  • Elle permet aussi de définir la taille du lot de copie.
  • @param ficLu Fichier à copier
  • @param ficEcrit Fichier vers lequel effectuer la copie
  • @param tailleCopie Taille du lot de copie
  • @throws IOException
  • @see <b>copier</b>(<b>String</b> ficLu,<b>String</b> ficEcrit [,<b>int</b> tailleCopie])
  • @see <b>copier</b>(<b>File</b> ficEcrit [,<b>int</b> tailleCopie])
  • @see <b>copier</b>([<b>int</b> tailleCopie])
  • @see <b>copier</b>(<b>String</b> ficEcrit [,<b>int</b> tailleCopie])
  • /
public static void copier(File ficLu, File ficEcrit, int tailleCopie) throws IOException{ FileInputStream read = new FileInputStream(ficLu); try { FileOutputStream write = new FileOutputStream(ficEcrit); try { byte[] tabLu = new byte[tailleCopie]; int nbLu; while((nbLu = read.read(tabLu)) > 0){ write.write(tabLu,0,nbLu); } } finally { write.close(); } } finally { read.close(); } } /**
  • Cette classe static permet de copier un fichier ficLu vers un fichier ficEcrit.<br>
  • Elle permet aussi de définir la taille du lot de copie.
  • @param ficLu Fichier à copier
  • @param ficEcrit Fichier vers lequel effectuer la copie
  • @param tailleCopie Taille du lot de copie
  • @throws IOException
  • @see <b>copier</b>(<b>File</b> ficLu,<b>File</b> ficEcrit [,<b>int</b> tailleCopie])
  • @see <b>copier</b>(<b>File</b> ficEcrit [,<b>int</b> tailleCopie])
  • @see <b>copier</b>([<b>int</b> tailleCopie])
  • @see <b>copier</b>(<b>String</b> ficEcrit [,<b>int</b> tailleCopie])
  • /
public static void copier(String ficLu, String ficEcrit, int tailleCopie) throws IOException{ File fficLu = new File(ficLu); File fficEcrit = new File(ficEcrit); CopieFile.copier(fficLu, fficEcrit, tailleCopie); } /**
  • Cette méthode permet de copier le fichier le fichier courant
  • dans un fichier définit par ficEcrit.<br>
  • Elle permet aussi de choisir la taille du lot de copie
  • @param ficEcrit Définit le fichier dans lequel copier.
  • @param tailleCopie Définit la taille du lot de copie.
  • @throws IOException
  • @see <b>copier</b>(<b>File</b> ficLu,<b>File</b> ficEcrit [,<b>int</b> tailleCopie])
  • @see <b>copier</b>(<b>String</b> ficLu,<b>String</b> ficEcrit [,<b>int</b> tailleCopie])
  • @see <b>copier</b>([<b>int</b> tailleCopie])
  • @see <b>copier</b>(<b>String</b> ficEcrit [,<b>int</b> tailleCopie])
  • /
public void copier(File ficEcrit) throws IOException{ CopieFile.copier(this,ficEcrit); } /**
  • Cette méthode permet de copier le fichier courant
  • vers le fichier ficEcrit définit par une chaine.<br>
  • La taille du lot de copie est 10 Ko.
  • @param ficEcrit Définit le fichier dans lequel faire la copie.
  • @param tailleCopie Définit la taille du lot de copie.
  • @throws IOException
  • @see <b>copier</b>(<b>File</b> ficLu,<b>File</b> ficEcrit [,<b>int</b> tailleCopie])
  • @see <b>copier</b>(<b>String</b> ficLu,<b>String</b> ficEcrit [,<b>int</b> tailleCopie])
  • @see <b>copier</b>(<b>File</b> ficEcrit [,<b>int</b> tailleCopie])
  • @see <b>copier</b>([<b>int</b> tailleCopie])
  • /
public void copier(String ficEcrit) throws IOException{ File fficEcrit = new File(ficEcrit); this.copier(fficEcrit); } /**
  • Cette classe static permet de copier un fichier ficLu vers un fichier ficEcrit.<br>
  • La taille du lot de copie est 10 Ko.
  • @param ficLu Fichier à copier
  • @param ficEcrit Fichier vers lequel effectuer la copie
  • @param tailleCopie Taille du lot de copie
  • @throws IOException
  • @see <b>copier</b>(<b>String</b> ficLu,<b>String</b> ficEcrit [,<b>int</b> tailleCopie])
  • @see <b>copier</b>(<b>File</b> ficEcrit [,<b>int</b> tailleCopie])
  • @see <b>copier</b>([<b>int</b> tailleCopie])
  • @see <b>copier</b>(<b>String</b> ficEcrit [,<b>int</b> tailleCopie])
  • /
public static void copier(File ficLu, File ficEcrit) throws IOException{ CopieFile.copier(ficLu, ficEcrit,10240); } /**
  • Cette classe static permet de copier un fichier ficLu vers un fichier ficEcrit.<br>
  • La taille du lot de copie est 10 Ko.
  • @param ficLu Fichier à copier
  • @param ficEcrit Fichier vers lequel effectuer la copie
  • @param tailleCopie Taille du lot de copie
  • @throws IOException
  • @see <b>copier</b>(<b>File</b> ficLu,<b>File</b> ficEcrit [,<b>int</b> tailleCopie])
  • @see <b>copier</b>(<b>File</b> ficEcrit [,<b>int</b> tailleCopie])
  • @see <b>copier</b>([<b>int</b> tailleCopie])
  • @see <b>copier</b>(<b>String</b> ficEcrit [,<b>int</b> tailleCopie])
  • /
public static void copier(String ficLu, String ficEcrit) throws IOException{ File fficLu = new File(ficLu); File fficEcrit = new File(ficEcrit); CopieFile.copier(fficLu, fficEcrit); } }

Conclusion :


Pour copier un fichier, il suffit d'utiliser une des méthodes prévu à cette effet.
En étudiant, ce code, vous remarquerez que quelque soit la méthode utiliser, c'est au final toujours la même qui se charge de la copie.

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.