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
      Verwalter

      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.