Array mit Umlauten zu JSON

Startseite Foren Deutsches LiveCode-Forum Array mit Umlauten zu JSON

Schlagwörter: 

Ansicht von 4 Antwort-Themen
  • Autor
    Beiträge
    • #20051
      Torsten
      Teilnehmer

        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

      • #20070
        Klaus Major
        Administrator

          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

        • #20072
          Torsten
          Teilnehmer

            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

          • #20073
            Klaus Major
            Administrator

              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

            • #20487
              Torsten
              Teilnehmer

                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

            Ansicht von 4 Antwort-Themen
            • Du musst angemeldet sein, um auf dieses Thema antworten zu können.