Exemples du cours
from http://vernier.frederic.free.fr/Teaching/IHM

Lecture entrée standard

import java.io.*;

class Ex1 {
  public static void main(String args[]) throws IOException {
    BufferedReader entreeClavier = new BufferedReader(
    new InputStreamReader(System.in));
    System.out.println ("Saisissez une phrase :");
    String saisie = entreeClavier.readLine();
    System.out.println ("Merci !");
    System.out.println ("Votre phrase est : ");
    System.out.println (saisie);
  }
}

Copie fichier dans fichier

import java.io.*;

public class Ex2 {

  public static void main(String[] args) throws IOException {
    FileReader input  = null; // flux d’entrée en char
    FileWriter output = null; // flux de sortie en char

    input  = new FileReader("original.txt"); // ouverture
    output = new FileWriter("copie.txt");	   // ouverture

    int c;
    while ((c = input.read()) != -1){ // lit caractère par
                                   //caractère jusqu’à la fin
      output.write(c);            // c en int
    }

    if (input != null) {
        input.close();	// ferme le flux d’entrée
    }
    if (output != null) {
        output.close();	// ferme le flux de sortie
    }
  }
}

OutputStreams (Ecriture de nombres en binaire dans un fichier)

import java.io.FileOutputStream;
import java.io.DataOutputStream;
import java.io.BufferedOutputStream;
import java.io.IOException;

public class Ex3{
  public static void main(String[] args) throws IOException{
    int[] entiers = { 12, 8, 13, 29, 50 };
    DataOutputStream out = new DataOutputStream (new BufferedOutputStream(new FileOutputStream("nomFichier")));
    for (int i = 0; i < entiers.length; i++) {
      out.writeInt(entiers [i]);
    }
    out.close();
  }
}

InputStreams (Lecture de nombres en binaire dans un fichier)

import java.io.FileInputStream;
import java.io.DataInputStream;
import java.io.BufferedInputStream;
import java.io.IOException;
import java.io.EOFException;

public class Ex4{
  public static void main(String[] args) throws IOException{
    DataInputStream in = new DataInputStream(new BufferedInputStream(new FileInputStream("nomFichier")));
    int somme = 0;
    try {
      while (true) {
        somme += in.readInt();
      }
    } catch (EOFException e) {
      System.out.println(somme);
      e.printStackTrace(System.err);
    }
    in.close();
  }
}

Lister un répertoire

import java.util.regex.*;
import java.io.*;
import java.util.*;

class DirFilter implements FilenameFilter{
  private Pattern pattern;
  public DirFilter(String regex) {
    pattern = Pattern.compile(regex); }
  public boolean accept(File dir, String name){
    return pattern.matcher(name).matches(); }
}

public class Ex5 {
  public static void main(String[] args) {
    File path = new File(".");
    String[] list;
    if(args.length == 0)
      list = path.list();
    else
      list = path.list(new DirFilter(args[0]));

Arrays.sort(list, String. CASE_INSENSITIVE_ORDER);
    for(String dirItem : list)
      System.out.println(dirItem);
  }
}