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);
}
}