Hallo ich schreibe zurZeit der Schule wegen an einer Vigenere Verschlüsselung alles klappt wunderbar habe auch schon eine GUI drum gebastelt etc allerdings klappt meine Verschlüsselung nur für GroßBuchstaben
ich würde gerne noch die Möglichkeit hinzufügen das der Benutzer wählen kann ob er Kleinbuchstaben und Special Characters noch hinzufügen will
wie stell ich das an ?!
hier mal mein Code den ich habe für die GroßBuchstaben:
und dann hier was ich in der GUI Aufrufe um mit den Werten der Textfelder zu encode/decoden:
ich würde gerne noch die Möglichkeit hinzufügen das der Benutzer wählen kann ob er Kleinbuchstaben und Special Characters noch hinzufügen will
wie stell ich das an ?!
hier mal mein Code den ich habe für die GroßBuchstaben:
Java:
public class Vigenere {
private final String code;
private int count = 0;
public Vigenere(String code) {
this.code = code;
}
//Verschlüsseln
public char encode(char chr) {
int c = chr;
if (c > 64 && c < 91) {
int code = this.code.charAt(count) - 65;
c += code;
if (c > 90) {
c-=26;
}
count = (count < this.code.length() -1) ? ++count : 0;
}
return (char) c;
}
//Entschlüsseln
public char decode(char chr) {
int c = chr;
if (c > 64 && c < 91) {
int code = this.code.charAt(count) - 65;
c -= code;
if (c < 65) {
c+=26;
}
count = (count < this.code.length() -1) ? ++count : 0;
}
return (char) c;
}
}
und dann hier was ich in der GUI Aufrufe um mit den Werten der Textfelder zu encode/decoden:
Java:
input = eingabe.getText();
input = input.toUpperCase();
schluessel = schluesselfeld.getText();
schluessel = schluessel.toUpperCase();
Vigenere Buchstabe = new Vigenere(schluessel);
StringBuilder output = new StringBuilder();
for (char i : input.toCharArray())
output.append(Buchstabe.decode(i)); //bzw encode
ausgabe.setText("" + output);