Unicode Tabelle ausgeben

Rapse

Mitglied
Hallo,

Also ich hab ne Aufgabe bekommen, mit der ich leider nicht zurecht komme.
Ich soll eine Methode schreiben die in Form einer Tabelle die Unicode Codes von 32 bis 255! ausgibt.

Also bspw. so:

(\u0020) !(\u0021) "(\u0022) #(\u0023) und immer so weiter..

Also die Formatierung mit der Tabelle bekomme ich hin und ich meine auch zu wissen das die Ausgabe dann mit Integer.toHexString erfolgen muss, aber ich hab ehrlich gesagt wenig Ahnung wie ich die Unicode Codes ausgeben kann.

Jemand nen Rat?
 

bERt0r

Top Contributor
Javadoc lesen
toHexString

public static String toHexString(int i)

Returns a string representation of the integer argument as an unsigned integer in base 16.

The unsigned integer value is the argument plus 232 if the argument is negative; otherwise, it is equal to the argument. This value is converted to a string of ASCII digits in hexadecimal (base 16) with no extra leading 0s. If the unsigned magnitude is zero, it is represented by a single zero character '0' ('\u0030'); otherwise, the first character of the representation of the unsigned magnitude will not be the zero character. The following characters are used as hexadecimal digits:

0123456789abcdef


These are the characters '\u0030' through '\u0039' and '\u0061' through '\u0066'. If uppercase letters are desired, the String.toUpperCase() method may be called on the result:

Integer.toHexString(n).toUpperCase()


Parameters:
i - an integer to be converted to a string.
Returns:
the string representation of the unsigned integer value represented by the argument in hexadecimal (base 16).
Since:
JDK1.0.2
Wie du siehst kannst du damit nur 0-9, A-F ausgeben.
 
Zuletzt bearbeitet:

Rapse

Mitglied
Hmm ja stimmt.

Also mir fehlt jetzt eig nur noch, das ich neben dem char zeichen halt in klammern das dazugehörige Unicode Zeichen ausgebe.

Wie genau schreib ich das denn?
 
M

Marcinek

Gast
Die lösung steht oben im thread

Du brauchst ein utf-8 output stream. Siehe link oben
 

BlackTiger95

Mitglied
[Java]
for(int i=32;i<=255;i++){

System.out.println("\u00"+i);

}

[/Java]

is nur so ein erster ansatz funktioniert nur bis 99 alles darüber muss speziell beachtet werden
 

Neue Themen


Oben