![]() |
Unsichtbare UTF16 Zeichen
Hallo!
Ich muss aus UTF8-Strings, in dem sich ein oder mehrere 'unsichtbare' UTF16 Zeichen befinden, ebendiese entfernen. Der Utf8 String soll auch ein solcher bleiben. Der UTF8 String:
Code:
Konvertiert zu ANSI
Kastagnette CM-9
Code:
Man beachte das Fragezeichen. Die Konvertierungsroutinen habe ich natürlich gefunden - aber welche nehme ich da und auch wie?
Kastagnette CM-?9
geldis |
AW: Unsichtbare UTF16 Zeichen
konvertriere den UTF-8 Text nach UTF-16, wirf dort die unerwünschten Zeichen raus und konvertiere das Resultat zurück nach UTF-8.
Wie im Detail hängt von der verwendeten Delphi-Version ab und in welchem Datentyp der UTF-8-String gespeichert ist. Neuere Delphiversionen haben z. B. einen ![]() Die Unit System.Character enthält eine Menge Funktionen zur Klassifizierung von UTF-16 Zeichen, z. B. IsWhitespace; damit kann man die unerwünschten Zeichen identifizieren. Die meisten dieser Funktionen sind auch über TCharHelper verfügbar, man also direkt sowas wie aString[i].IsWhitespace verwenden. |
AW: Unsichtbare UTF16 Zeichen
Prima, besten Dank, damit komme ich dahin wo ich hin will.
geldis |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:41 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