package questioncomplementaire; import java.io.FileNotFoundException; import java.io.PrintWriter; import java.util.ArrayList; public class Comparateur { public static void main(String[] arg) { PrintWriter out; try { out = new PrintWriter("resultats.txt"); } catch (FileNotFoundException e) { System.out.println("Impossible d'ouvrpour les résultats."); e.printStackTrace(); return; } int TAILLE_EXTRAIT = 50; String texteClair = Utilitaire.lireTexte("texte1.txt"); out.println("début du texte original : " + texteClair.substring(0, Math.min(50, texteClair.length()))); texteClair = Utilitaire.getLettres(texteClair); out.println("texte après `getLettres` : " + texteClair.substring(0, Math.min(50, texteClair.length()))); ArrayList algoAComparer = new ArrayList(); algoAComparer.add(new Cesar(3)); algoAComparer.add(new Morse()); algoAComparer.add(new Cesar(10)); algoAComparer.add(new CodageAClef("mon secret")); algoAComparer.add(new CodageAClef("")); algoAComparer.add(new Huffman(texteClair)); String encodee = ""; for (AlgoCodage algo : algoAComparer) { out.println("algorithme : " + algo.toString()); long avant = System.currentTimeMillis(); encodee = algo.encode(texteClair); long apres = System.currentTimeMillis(); long duree = apres - avant; out.println("\tencodage : " + "\t durée : " + duree + "\t résultat : " + encodee.substring(0, Math.min(50, encodee.length()))); avant = System.currentTimeMillis(); String decodee = algo.decode(encodee); apres = System.currentTimeMillis(); duree = apres - avant; out.println("\tdécodage : " + "\t durée : " + duree + "\t résultat : " + decodee.substring(0, Math.min(50, decodee.length()))); } out.close(); } }