Bonjour à tous !
Je me suis récemment remis au Java après un long moment d'absence et je suis actuellement confronté à un problème.

Je travaille sur une méthode de cryptage avec clé que j'avais initialement réalisé en PHP et j'aimerais savoir s'il y a une fonction qui permet de changer un caractère par un autre selon une table de correspondances (équivalent de la fonction strtr() en PHP)

Pour le moment j'ai développé une méthode qui me semble un peu barbare

tabcrypt contient les lignes de la table de Vigenère sous forme de String

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 
public static String codage(String cle, String text,String[] tabcrypt){
	String textdecode = "";
 
	int j = 0;
 
	for(int i=0;i<text.length();i++){
		if(j>= cle.length()){
			j = 0;
		}
 
		int x = tabcrypt[0].toUpperCase().indexOf(text.toUpperCase().charAt(i));
		int y = tabcrypt[0].toUpperCase().indexOf(cle.toUpperCase().charAt(j));
		if(x < 0){
			textdecode += text.charAt(i);
		}else{
			textdecode += tabcrypt[x].charAt(y);
		}
		j++;
	}
 
	return textdecode;
}
Si quelqu'un a une idée je suis preneur