Startseite › Foren › Deutsches LiveCode-Forum › Array mit Umlauten zu JSON
Schlagwörter: JSON
- Dieses Thema hat 4 Antworten und 2 Teilnehmer, und wurde zuletzt aktualisiert vor 4 Jahren, 5 Monaten von Torsten.
-
AutorBeiträge
-
-
April 8, 2020 um 17:39 Uhr #20051
Hi,
ich habe gerade das Problem, dass ich ein Livecode-Array mit deutschen Umlauten habe und der ArrayToJSON-Export die Umlaute nicht richtig exportiert, so dass ich das entstandene JSON-Objekt auch nicht mehr mit textencode retten kann.
Ich habe auch feststellen müssen, dass ArrayToJSON Keys mit Umlauten einfach gar nicht exportiert.
Kennt jemand das Problem und die Lösung?
LG
Torsten -
April 9, 2020 um 16:35 Uhr #20070
Hallo Torsten,
ich hatte mal auf der Mailingliste nachgefragt und Trevo DeVore gab mir diese Auskunft:
————————————————————
Meine Anfrage:on mouseUp put "eins" into tArray["äns"] put "zwei" into tArray["zwöi"] put arraytojson(tArray) end mouseUp
———————-
gives -> {}Is this correct/desired behaviour?
————————————————————
Trevors Antwort:
Correct? Yes. The data and keys are not UTF-8 encoded.
Desired? No.
Try encoding the keys and data as UTF-8 before passing to arraytojson. Arraytojson() uses the mergJSON external and requires UTF-8 data.
———————-on mouseUp put textEncode("eins", "utf8") into tArray[textEncode("äns", "utf8")] put textEncode("zwei", "utf8") into tArray[textEncode("zwöi", "utf8")] put arraytojson(tArray) end mouseUp
———————-
You can refer to the following report I filed on the current state of JSON in LiveCode (which is not good). In my work I use both the JSON Library and mergJSON as described in the report.
https://quality.livecode.com/show_bug.cgi?id=22478
—————————————————————-Nicht sehr ermutigend, ich würde einfach versuchen, Umlaute zu meiden wie der Teufel das Weihwasser!
Da ich aus einer Zeit komme, wo es arge Probleme unter Mac/Windows auf dem Rechner bei Dateinmaen mit Umlauten (und Groß- und Kleinschreibung) gab, verwende ich diese beim Programmieren einfach nicht mehr und halte alle meine Dateinamen in Kleinbuchstaben.
Gruß
Klaus
-
April 9, 2020 um 20:53 Uhr #20072
Hi Klaus,
vielen Dank für die Info, das habe ich schon befürchtet. Dann muss ich mal für mein Array mit den internen Umlauten etwas schreiben, bei dem die Werte in UTF-8 umgewandelt werden.
So eine Art Array-Kopierer, der aber zwischendrin alls Keys und Values entsprechen umkodiert…Auf jeden Fall vielen Dank und liebe Grüße
Torsten -
April 9, 2020 um 21:13 Uhr #20073
Für solche doch etwas fortgeschrittenen Fragen, empfehle ich wirklich, die Mailingliste zu abonnieren.
Falls Du magst, hier geht das: http://lists.runrev.com/mailman/listinfo/use-livecode
-
Mai 1, 2020 um 17:26 Uhr #20487
Ich habe eine Lösung mit replace gemacht, die ich aber nicht posten kann, weil das Blogtool den Code nicht annimmt 🙁
Wer den Code, der die JSON-Umlaute in deutsche Umlaute umformt haben möchte, schreibe mir eine Mail: torsten.holmer@web.de
Happy Coding!
Torsten
-
-
AutorBeiträge
- Du musst angemeldet sein, um auf dieses Thema antworten zu können.