Forum: PC-Programmierung String-Kodierung in Python anpassen


von Matt B. (mattb)


Lesenswert?

Hallo,

ich lese einen String über eine serielle Schnittstelle ein. Dabei passt 
die Kodierung nicht. Leider bekomme ich es nicht hin, den String in 
UTF-8 umzuwandeln. Um was für eine Kodierung es sich bei dem 
eingelesenen String handelt weiss ich noch nicht.

Bislang habe ich nur zwei Zeichen ermitteln können:

Eingangsstring         UTF-8
{                      ä
~                      ß

Kann mir jemand dabei helfen?

Danke
matt

von Udo S. (urschmitt)


Lesenswert?

Kann eigentlich nicht sein, denn in UTF8 sind 'ä' und 'ß' 
Multibyte-Zeichen.
'ä' z.B. ist Hex c3a4.

Was ist jetzt dein Problem:
Die Zeichen mit Phyton korrekt einzulesen / zu konvertieren?
oder
Herauszufinden in welchen Zeichensatz der Sender die Zeichen sendet?

Auf alle Fälle solltest du dir die Hex Werte der empfangenen Zeichen 
anschauen um herauszufinden in welchem Zeichensatz der Sender sendet. 
Die in irgendeinem unbekannten Zeichensatz als '{' wird 'ä' anzugeben 
ist wenig zielführend.

Heisse Kandidaten wären CP1252 (WinAnsi) CP0850 oder CP0858 (ASCII oder 
auch DOS)

Welche Codes was bedeuten findest du im Internet, für UTF8 z.B.
http://utf8-zeichentabelle.de/

: Bearbeitet durch User
von Yalu X. (yalu) (Moderator)


Lesenswert?

Matt B. schrieb:
> Eingangsstring         UTF-8
> {                      ä
> ~                      ß

Das scheint ein modifizierter ASCII-Code zu sein, wie er oft für Drucker
verwendet wurde, auch als ISO 646 bekannt:

  http://de.wikipedia.org/wiki/ISO_646#Aufbau

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.