[Java] Unicode Zeichen ausgeben

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von toschk, 18. Oktober 2009 .

  1. 18. Oktober 2009
    Unicode Zeichen ausgeben

    Hi, ich komme bei der ausgabe von Unicode Zeichen nicht weiter.
    Die Aufgabenstellung lautet wie folgt:
    Die Ausgabe schaut wie folgt aus:
    Leider zeigt er statt dem gewünschtem Unicode Zeichen immer den erzeugten HEX-String an.
    Woran liegt das?


    Ich vermute den Fehler in der Zeile:
    Code:
    System.out.println(item + " " + toHex(item) + " \u"+ toUnicode(item) );
    Code:
    package prog1aufg2;
    import java.lang.Integer;
    
    public class prog1aufg2 {
     static String toHex(int zahl){
     return Integer.toHexString(zahl);
     }
    
     static String toUnicode(int zahl){
     String zusatz= "";
     String hex = Integer.toHexString(zahl);
     for(int i=4; i>Integer.toHexString(zahl).length(); i--){
     zusatz = zusatz + "0";
     }
     String erg = zusatz+hex;
     return erg;
     }
    
     public static void main(String[] args) {
     int[] zahl= new int[3];
     zahl[0]=48;
     zahl[1]=65;
     zahl[2]=122;
    
     for(int item: zahl){
     System.out.println(item + " " + toHex(item) + " \u"+ toUnicode(item) );
     }
     }
    }
    
     
  2. 18. Oktober 2009
    AW: Unicode Zeichen ausgeben

    Weiß zwar nicht, ob es daran liegt, aber warum gibst du bei "toUnicode" nicht einfach direkt einen string mit "\u" mit?

    Code:
    static String toUnicode(int zahl){
     String zusatz= "";
     String hex = Integer.toHexString(zahl);
     for(int i=4; i>Integer.toHexString(zahl).length(); i--){
     zusatz = zusatz + "0";
     }
    
     return "\u" + zusatz + hex;
     }
    
    Dann kannst du dir das "\u" am Ende sparen.

    greez
     
  3. 18. Oktober 2009
    AW: Unicode Zeichen ausgeben

    ja das hab ich auch schon ausprobiert. Leider ist es das gleiche Resultat
     
  4. 19. Oktober 2009
    AW: Unicode Zeichen ausgeben

    Hat keiner eine Idee? Sollte eigtl. kein Problem sein.
     
  5. 19. Oktober 2009
    AW: Unicode Zeichen ausgeben

    also ich kann dir sagen das es mit ("\u" + integer) nicht funktionieren kann, da der ausdruck mit "\u" bereits verarbeitet wurde bevor du den integer dazu addierst

    ne lösung auf die schnelle hab ich jetz auch ned, ich schau mal ^^

    //die lösung is der typ "char"
    Code:
    char z = 0x007a;
    System.out.println(z); //z
     
  6. 21. Oktober 2009
    AW: Unicode Zeichen ausgeben

    Danke für den Tipp. Leider ist es schlecht zu implementieren da es keine Umwandlung von String nach Hex literal gibt.
     
  7. 21. Oktober 2009
    AW: Unicode Zeichen ausgeben

    irgendwie raffe ich das nicht.

    muss die ausgabe nicht so aussehen?
    Code:
    System.out.println(item + " " + toHex(item) + " \\u"+ toUnicode(item) );
    

    nice day
    harry
     
  8. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.