![]() |
Unicode umwandeln
Hi,
eigentlich hab ich mich immer geweigert diverse Projekte auf Unicode umzuwandeln, aber im Zuge der globalisierung steh ich nun vor dem Problem. Gibt es eine Möglichkeit einen Unicode (Big5 Traditionelles Chinesisch) in einen normalen String mit Charset (CHINESEBIG5_CHARSET) umzuwandeln? Was ich über den angesprochenen Dienst geliefert bekomme schaut wie folgt aus: 11Þ¡}SÊe°^X1S (C) Des chinesischen bin ich zwar nicht mächtig, aber ich glaube auch für die Chinesen ist das unleserlich :) Peter |
Re: Unicode umwandeln
Wäre es nicht einfacher Unicode-fähige Komponenten zu nehmen oder auf D2008 zu warten?
|
Re: Unicode umwandeln
Naja schön wäre es schon, aber das Projekt muss bis nächsten Monat dahingehend angepasst werden das die Tickerdaten eingelesen und leserlich ausgespuckt werden. Meine Idee ist es (weil das Projekt umzuwandeln schlichtweg innerhalb eines Jahres unmöglich ist) den Code (ist glaub ich UTF-8) in einen WideString umzuwandeln und da es eh immer Big5 Chinesisch ist dann in einen String mit dem jeweiligen Charset. So ganz missfällt mir zwar der Job, da das Projekt sicher nur von einer Firma gekauft und danach von allen anderen kopiert wird - egal mein Chef wills halt so..
|
Re: Unicode umwandeln
In Unicode-Bibliotheken gibt es auch Konvertierungsfunktionen zwischen verschiedenen Codierungen
|
Re: Unicode umwandeln
Liste der Anhänge anzeigen (Anzahl: 1)
Sorry das ich mich jetzt nochmal melde, aber ich bin schlichtweg nicht weitergekommen.
Anbei ist mal ein Beispieltext der ungefiltert über den Ticker kommt. Wie gesagt ich habe nichts vergleichbares im Netz gefunden was mir hilft. Lediglich ein Code zum konvertieren von Big5 Text ins GBK Format: function Big52GB(ABig5String: string): string; { BIG5 to GBK : BIG5 ==> Unicode ==> GBK } var mWString: array[0..1024] of WideChar; cchWideChar: Integer; mLongBool: LongBool; begin Result := ABig5String; mLongBool := True; cchWideChar := MultiByteToWideChar(950, 0, PChar(ABig5String), length(ABig5String), @mWString, 0); MultiByteToWideChar(950, 0, PChar(ABig5String), length(ABig5String), @mWString, cchWideChar); WideCharToMultiByte(936, 0, @mWString, cchWideChar, PChar(Result), length(Result), '?', @mLongBool); end; Wenn hier jemand ne Idee hat wie man die ASCII strings richtig anzeigen kann, wäre ich froh.. Peter |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:38 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz