glog_td4/questioncomplementaire/Comparateur.java
2018-04-01 14:34:28 +02:00

59 lines
1.8 KiB
Java

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<AlgoCodage> algoAComparer = new ArrayList<AlgoCodage>();
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();
}
}