arraydecode Fehler

Startseite Foren Deutsches LiveCode-Forum arraydecode Fehler

Schlagwörter: 

Ansicht von 3 Antwort-Themen
  • Autor
    Beiträge
    • #13624
      Kruemel
      Teilnehmer

        Moin,

        ich habe ein problem beim Speichern, bzw. laden vom array. Ich möchte, dass später auf`m mobile meine Daten beim starten wieder importiert werden.

        set the defaultFolder to specialFolderPath("documents")

        on Einstellungenladen
           put url"file:Settings.txt" into tDaten
           if the result is not empty then exit Einstellungenladen
           put arraydecode(tDaten) into lEinstellungen
           put lEinstellungen["AktuelleWoche"] into field "AktuelleWoche" 
           put lEinstellungen["Jahr"] into field "Jahr" 
           put lEinstellungen["ArbeiterName"] into field "ArbeiterName" 
           put lEinstellungen["DatumAnfang"] into field "DatumAnfang" 
           put lEinstellungen["DatumEnde"] into field "DatumEnde"
           set the dgdata of group "DataGridWochenstunden" to lEinstellungen["DataGridWochenstunden"]
        end Einstellungenladen
        
        on Einstellungenspeichern
           put field "AktuelleWoche" into lEinstellungen["AktuelleWoche"]
           put field "Jahr" into lEinstellungen["Jahr"]
           put field "ArbeiterName" into lEinstellungen["ArbeiterName"]
           put field "DatumAnfang" into lEinstellungen["DatumAnfang"]
           put field "DatumEnde" into lEinstellungen["DatumEnde"]
           put the dgdata of group "DataGridWochenstunden" into lEinstellungen["DataGridWochenstunden"]
           put arrayencode(lEinstellungen) into tDaten
           put tDaten into url"file:Settings.txt"
        end Einstellungenspeichern

        Die Datei wird gespeichert und auch wieder geladen. Nur leider sehen die Daten nach dem laden anders aus. Wenn ich mir die Variablen angucke, hat die tDaten nach dem Laden am Anfang 2 Leerzeilen (zumindest sieht es so aus). Daraus wird dann beim umwandeln kein wirklicher array. Es steht nur „Arbei“ in lEinstellungen. Es tritt in livecode und auch beim Handy auf.
        Speichere ich die Variable tDaten nicht, sondern wandele sie aus dem Cache als locale Variable wieder um, klappt es. Es muss also irgendwie am Speichern und laden liegen. Nur was passiert da?

      • #13626
        Klaus Major
        Administrator

          HustDictionaryHust! 😀

          The arrayEncode function returns a string of binary data that represents the data and structure of the specified array.

          Also bitte zum Speichern und Lesen BINFILE wählen:

          put tDaten into url“BINFILE:Settings.txt“

        • #13644
          Kruemel
          Teilnehmer

            Danke, Danke, Danke

          • #13645
            Torsten
            Teilnehmer

              Alternativ kannst Du die Arrays auch im JSON-Format speichern und wieder laden, dass man auch direkt als Text noch lesen kann:

              https://livecode.fandom.com/de/wiki/JsonExport
              https://livecode.fandom.com/de/wiki/JsonImport

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