ein char in Dezimalzahl umwandeln

swit27

Mitglied
Hallo Leute;

ich hab versucht ein character in Dezimalzahl zwischen 0 und 255 umzuwandeln, es hat bei normalen Zeichen funktioniert. Aber wenn ich z.b. für '€' oder für 'Š' eine Zahl bekommen möchte kriege ich eine größer als 250.

Das ist was ich gemacht habe:

char c = '€' ;
int t = (int) c;

danke im voraus
 
Hi,

das ist logisch...soweit ich weiß ist ein Char oder String in Java immer als UTF-8 ( Unicode) definiert/codiert...

http://de.wikipedia.org/wiki/Unicode

und somit kann zwar jedes mögliche Zeichen dargestellt werden, aber Du wirst halt nicht viel erfolg mit deinem Vorhaben haben, was willst Du eigentlich machen?

hmf
 
Danke erstmal für deine Antwort,

ja ich bekomme Messdaten (Temperaturen) als String von einem gerät.
Jeder char repräsentiert eine Temperatur.
Deswegen will ich diese character in eine Dezimalzahl umwandeln.

Danke nochmal
 
Hi,

da kommt es nur auf den Wertebereich an, kannst den Char trotztdem in nen Integer wandeln...

hmf
 
ein Char ist eine 16 bit Variable (daher UTF-16) und auch gleichzeitig der einzige wirkliche unsigned Datentyp, daher wird kein Bit für das Vorzeichen verwendet, sonst wäre es bis auf die handhabe mit short(16 bit mit Vorzeichen, –32768 bis 32767) gleich.

Um daher ein char sicher in die zugehörige Dezimalzahl zu verwandeln muss man es mind. in ein int (32-bit, aber mit Vorzeichen) casten.

Java:
int dezChar = (int) '€';
 
Zuletzt bearbeitet:
ja die Verwandlung in einen int habe ich schon probiert, ich habe aber für manche Zeichen Werte größer als 255 gekriegt.
Die Werte, die ich bekommen will, müssen zwischen 0 und 255.

Gruß
 
Wenn das muss, darfst du eben fast nur ASCII Zeichen durchlassen, weil alles andere ist eben größer als 255 :p

Aber ganz ehrlich da bin ich überfragt, was da genau zu machen ist, sry.

Aber was ich mich Frage....für was die ganze Umwandlung?^^
 
Zuletzt bearbeitet:
Ja bei ANSI gibts Zeichen die größer als 250
Ich bekomme die Zeichen von einem Gerät deswegen kann ich nicht selber entscheiden welche char sollen sein :)
 
"Aber was ich mich Frage....für was die ganze Umwandlung?"


ja ich bekomme Messdaten (Temperaturen) als String von einem gerät.
Jeder char repräsentiert eine Temperatur.
 
Zurück