Tag,
ich versuche mehrere Methoden, bereingen und verschlüsseln in der main-Methode
aufeinander anzuwenden. Das heißt, dass der Text bevor er verschlüsselt wird erst bereingt werden soll. Leider funktioniert das nicht so ganz :bahnhof:
Methode bereingen:
Methode verschlüsseln:
main-Methode:
Wie kann ich zuerst bereinigen und diesen Text dann auf verschlüsseln anwenden?
Danke
ich versuche mehrere Methoden, bereingen und verschlüsseln in der main-Methode
aufeinander anzuwenden. Das heißt, dass der Text bevor er verschlüsselt wird erst bereingt werden soll. Leider funktioniert das nicht so ganz :bahnhof:
Methode bereingen:
Java:
public static String bereinigen(String eingabe){ // Der Text wird bereingt: alle Kleinbuchstaben in Großbuchstaben, Leerzeichen werden entfernt, Umlaute werden durch normale Buchstaben ersetzt
String text = "";
char zeichen;
char neuesZeichen;
for (int i = 0 ; i < eingabe.length(); i = i+1){
zeichen = eingabe.charAt(i);
if ( (int) zeichen >= (int) 'A' && (int) zeichen <= (int) 'Z' ) {
// zeichen ist ein Großbuchstabe
text = text + zeichen;
}
if ( (int) zeichen >= (int) 'a' && (int) zeichen <= (int) 'z' ) {
// zeichen ist ein Kleinbuchstabe
neuesZeichen = (char) (zeichen-32);
text = text + neuesZeichen;
}
if ( zeichen == 'Ä' || zeichen == 'ä' ) { // Ä wird zu AE
text = text + "AE";
}
if ( zeichen == 'Ö' || zeichen == 'ö' ) { // Ö wird zu OE
text = text + "OE";
}
if ( zeichen == 'Ü' || zeichen == 'ü' ) { // Ü wird zu UE
text = text + "UE";
}
if ( zeichen == 'ß' ) { // ß wird zu SS
text = text + "SS";
}
if (zeichen == '!' + '?' + ',' + '.' + '(' + ')' + ':' + ';' + ' ') { // jegliche Sonderzeichen werden entfernt
text = "";
}
}
return text;
}
Methode verschlüsseln:
Java:
public static String verschlüsseln(String text, String schlüssel) { //Verschlüsseln
String neuertext = "";
// Text wird durch Methode /bereinigen/ bereinigt
for (int i = 0, j=0; i < text.length(); i = i+1) {
char buchstabe = text.charAt(i);
int zahl = (int) buchstabe;
// += ist eine Additionszuweisung → alles wird direkt auf neuertext hinzugerechnet
neuertext += (char)((buchstabe + schlüssel.charAt(j) - 2 * 'A') % 26 + 'A'); // Funktioniert noch nicht so wie gewollt, manchmal gehts, manchmal nicht?!?! zu dumm für den dreck
j = ++j % schlüssel.length(); //% führt Division aus, nur der Restwert wird geliefert
}
return neuertext;
}
main-Methode:
Java:
public static void main(String[] args) {
String schlüssel = "SCHLUESSEL";
String text = "Guten Tag!";
String bereinigen = bereinigen(text);
String verschlüsseln = verschlüsseln(text, schlüssel);
System.out.println(verschlüsseln);
}
Wie kann ich zuerst bereinigen und diesen Text dann auf verschlüsseln anwenden?
Danke