Datentypen Codewandler

Olli_Kay

Neues Mitglied
Hallo liebe Community ich bin Java Einstiger und stehe momentan vor einer für mich gewaltigen Aufgabe für die ich Anregungen zur Umsetzung benötige.

Arbeitsaufgabe:

Es soll ein Programm geschrieben werden , das eingegebene Bitfolgen in das entsprechende Zeichen (ASCII,7 Bit) übersetzt und dem Benutzer ausgibt.
Weitere Funktionalitäten können das Übersetzen zwischen verschiedenen Codierungen und eine intuitive zu bedienende GUI umfassen .

Vorgeschlagene ( aber nicht auszuschließlich erlaubte ) Erweiterungen:

1. Der Codewandler kann auch mit erweitertem ASCII-Code (8Bit) arbeiten

2. Der Codewandler kann nach Eingabe eines Zeichens über die Tastatur demn Bit Code auf dem Bildschirm ausgeben.

3. Ein- und Ausgabe erfolgen mithilfe eines GUI.

4. Es können ganze Zeichenketten auf einmal eingegeben werden.

5.Man kann den Text "¿κρυπτός? " als Bit-Code, nach einem gängigen Codierungssystem interpretiert, ausgeben.

6.Man kann eine Datei von der Festplatte lesen und nach verschiedenen Systemen decodiert anzeigen lassen.



Leider fehlt mir aktuell jeglicher Lösungsansatz ich würde mich über Unterstützung und Hilfe sehr freuen.
 
K

kneitzel

Gast
Also wenn Ihr eine solche Arbeitsaufgabe bekommen habt, dann habt Ihr auch garantiert im Unterricht Lösungsansätze bekommen. Wie sollt ihr das denn nun lösen?

Es geht um Zeichenketten - daher würde ich mir die Klasse String näher ansehen. Das ganze nennt sich Encoding - danach kann man auch auf Google etwas suchen. Aber bei allen Lösungen ist halt auch immer die Frage, was von euch erwartet wird.

Konrad
 

Viktim

Bekanntes Mitglied
Hallo,
Der Binär in Ascii umwandler könnte so aussehen:
Java:
    String string = "0100100001000001010011000100110001001111";
    String string2 = "";
    char nextChar;

    for (int i = 0; i <= string.length() - 8; i += 8) {
      nextChar = (char) Integer.parseInt(string.substring(i, i + 8), 2);
      string2 += nextChar;
    }
    System.out.println(string2);

Und ein paar Sonderzeichen findest du z.B hier:
http://www.roubaixinteractive.com/PlayGround/Binary_Conversion/The_Characters.asp
 
Zuletzt bearbeitet:
K

kneitzel

Gast
Die Lösung würde ich so als nicht korrekt ansehen. Du hast ja in deinem string einfach nur die bits - über das encoding ist ja nichts gesagt.

Somit steht erst einmal nicht fest, ob die einfach so byte für byte als Buchstabe genommen werden könnten. Das könnte ja auch ein utf8 string sein, bei denen einzelne Zeichen auch mehrere Bytes groß sein können oder utf16, ebi dem mindestens 2 Bytes aber evtl. auch mehr Bytes für ein Zeichen benötigt werden.

Die Umwandlung Zeichen -> Bitcode oder Bitcode -> Zeichen ist immer abhängig vom Encoding. Und dass dies unterschiedlich sein kann, ist ja eben Bestandteil dieser Aufgabe (nach meinem Verständnis).
 

Viktim

Bekanntes Mitglied
Das könnte ja auch ein utf8 string sein, bei denen einzelne Zeichen auch mehrere Bytes groß sein können oder utf16, ebi dem mindestens 2 Bytes aber evtl. auch mehr Bytes für ein Zeichen benötigt werden.
Ohh dann hab ich die Aufgabe wohl nicht richtig gelesen :rolleyes: ich dachte erstmal nur Binär in Ascii :eek:
naja, danke für den Hinweis :D
 

Neue Themen


Oben