Médiaforma

Java – Les objets FileInputStream et FileOutputStream

Print Friendly

Les objets FileInputStream et FileOutputStream permettent respectivement de lire et d’écrire dans un fichier. Nous allons les utiliser pour copier le fichier source.txt dans le fichier destin.txt. Voici le code utilisé :

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class isOs {
  public static void main(String[] args) {
    FileInputStream fis;
    FileOutputStream fos;
    try {
      fis = new FileInputStream(new File("source.txt"));
      fos = new FileOutputStream(new File("destin.txt"));
      int data;
      while ((data = fis.read()) >= 0)
        fos.write(data);
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}

On commence par déclarer les objets fis et fos de classe FileInputStream et FileOutputStream. Puis on les instancie en transmettant le nom du fichier source et destination à leurs constructeurs.

La copie se fera octet par octet dans le fichier représenté par l’objet fis. La méthode fis.read() lit et retourne un octet dans le fichier source.txt. Si la donnée retournée vaut -1, la fin du fichier est atteinte. En comparant la valeur retournée à 0, la lecture se poursuit jusqu’à la fin du fichier :

while ((data = fis.read()) >= 0)

Il suffit alors d’écrire l’octet lu dans le fichier représenté par l’objet fos :

fos.write(data);
Vous avez aimé cet article ? Partagez-le avec vos réseaux...
 
Comments

No comments yet.

Leave a Reply