Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   REST-Service und deutsche Sonderzeichen (ä=\u00e4) (https://www.delphipraxis.net/199770-rest-service-und-deutsche-sonderzeichen-ae%3D%5Cu00e4.html)

hoika 19. Feb 2019 09:44

REST-Service und deutsche Sonderzeichen (ä=\u00e4)
 
Hallo,
ich bekomme von einem Rest-Service den folgenden Text als AnsiString
Das h\u00e4tte ich ohne dich nicht geschafft

Klar sollte das \u00e4 ein ä sein.

Der Rest-Service ist nicht von mir.
Sollte das ä nicht anders maskiert sein?
Bekomme ich das durch eine Delphi- oder Windows-Funktion konvertiert
oder muss ich das selber per StringReplace machen?

Schokohase 19. Feb 2019 10:09

AW: REST-Service und deutsche Sonderzeichen (ä=\u00e4)
 
Was bekommst du exakt zurück. Nur diesen Text oder noch ein paar - in deinen Augen unwichtige - Zeichen die du uns vorenthälst?

Z.B.
Code:
"Das h\u00e4tte ich ohne dich nicht geschafft"
Den könntest du mit einer vernünftigen JSON-Bibliothek passend umwandeln.
Einfach mal hier versuchen.

hoika 19. Feb 2019 10:21

AW: REST-Service und deutsche Sonderzeichen (ä=\u00e4)
 
Hallo,
nein nur die, keine komischen Zeichen ala vermurkstes Unicode.

Der schöne Günther 19. Feb 2019 10:23

AW: REST-Service und deutsche Sonderzeichen (ä=\u00e4)
 
Welche Bibliothek liefert denn
Delphi-Quellcode:
AnsiString
😨

hoika 19. Feb 2019 10:25

AW: REST-Service und deutsche Sonderzeichen (ä=\u00e4)
 
Hallo,
das klappt ja bei dem Link wirklich ;)

{"a":"Das h\u00e4tte ich ohne dich nicht geschafft"} -> {"a":"Das hätte ich ohne dich nicht geschafft"}

Schokohase 19. Feb 2019 10:27

AW: REST-Service und deutsche Sonderzeichen (ä=\u00e4)
 
Ja, das liegt wohl an der Definition von JSON.
Und es klappt auch, wenn du nur
Code:
"H\00E4tte"
dort eingibst, weil auch das ist JSON

hoika 19. Feb 2019 13:20

AW: REST-Service und deutsche Sonderzeichen (ä=\u00e4)
 
Hallo,
Zitat:

welche Bibliothek liefert denn AnsiString
eine (nicht von mir) selbstgeschriebene ...

Ich glaube, das war auch WideString, wurde aber dann in AnsiString konvertiert.
Ich wollte damit nur Hinweisen, dass es wahrscheinlich nichts mit Unicode-Konvertierung zu tun hat.


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:03 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz