Input/Output Unicode Umwandlung

SlevinHW

Neues Mitglied
Hi,
ich bin momentan dran einen kleinen Verschlüsselungsalgorithmus zu programmieren. Soweit mit der Verschlüsseln passt alles jedoch beim wieder entschlüsseln tritt ein Problem auf.
Mein Algorithmus wird auf jeden char einer Eingabe angewendet und wandelt den in seinen Unicode-Wert um wie:
Java:
public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("Geben Sie einen Text ein:");
        String txt=scanner.nextLine();
        char[] array=txt.toCharArray();
        int[] integer;
        integer = new int[array.length];
        System.out.println("Die ASCII-Werte sind:");
        for(int i=0;i<array.length;i++){
            integer[i]=(int) array[i];
            System.out.println(integer[i]);
        }
        
    }
Darauf wird dann der Algorithmus angewendet und in letzter Instanz wieder zurück in ein char-Array umgewandelt. Zur Vereinfachung wird das nur auf die Zeichen bis zum Unicode-Wert 126 angewendet jedoch bei der Verschlüsselung komme ich auch auf Werte bis zu 158 (liegt daran da die Unicode-Werte 0-30 nicht als Ausgabe am Bildschirm abgebildet werden[und 127 habe ich auch ausgelassen da Entf auch nicht ausgegeben werden kann]) wenn ich jedoch einen Wert über 128 von einem char in einen Integer verwandeln will gibt mir das Programm immer 63 aus.
Wenn ich zum Beispiel mit dem Programm :
Java:
public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);
        int zahl = scanner.nextInt();
        System.out.println("Die Zahl hat in der ASCII-Tabelle den Charakter:");
        char x=(char) zahl;
        System.out.println(x);
    }
die Zahl 138 in das zugehörige Unicode-Zeichen umwandle und dann mit dem obrigen Code wieder in einen Integer verwandle kommt bei mir 63 raus.
Kann mir wer da weiterhelfen?

Ahja ich arbeite mit NetBeans IDE 8.0.2
 
Zuletzt bearbeitet von einem Moderator:
Ich würde es anstatt mit der expliziten Typumwandlung (char) mit den Wrapperklassen versuchen. Diese bieten meist Methoden wie "toChar" oder so an.
 
hi JMarkus,
danke für deine Antwort aber leider funktioniert das auch nicht so wie es soll.
Hab mich jetzt nach langem überlegen und recherchieren dazu entschieden das Programm umzuschreiben.
aber nochmals danke für die antwort
 

Zurück
Oben