Startseite › Foren › Deutsches LiveCode-Forum › Variable dauerhaft abspeichern
- Dieses Thema hat 9 Antworten und 2 Teilnehmer, und wurde zuletzt aktualisiert vor 2 Jahren, 2 Monaten von
foto2004.
-
AutorBeiträge
-
-
Dezember 26, 2022 um 21:08 Uhr #47540
Hallo Gemeinde,
ich sehe wahrscheinlich den Wald vor lauter Bäumen nicht.
Wie stelle ich es an dass eine Usereingabe die ich in eine Variable packe dauerhaft gespeichert wird?
Ich meine so dass das spätere Programm auch geschlossen werden kann und beim wieder öffnen der wert der vorher eingeben werde wieder verfügbar ist.
-
Dezember 26, 2022 um 21:46 Uhr #47541
Das musst Du in einer externen Datei speichern und beim nächsten Programmstart wieder einlesen.
-
Dezember 26, 2022 um 22:13 Uhr #47542
Danke ich hab es befürchtet
-
Dezember 26, 2022 um 22:58 Uhr #47543
Kommst Du klar? Sonst fragen! 🙂
-
Dezember 27, 2022 um 18:50 Uhr #47544
Danke, ich denke das bekomme ich noch hin. Wollte nur wissen ob es da eine andere Möglichkeit gibt.
-
Dezember 29, 2022 um 09:46 Uhr #47545
Hmm offenbar bekomme ich es nicht hin….
hier mein Code
put dataPfad&"tdtdt.txt" into tFile
put CR & fld"Duser" into url("file:" & tFile)
put CR & fld"Dpassword" AFTER url("file:" & tFile)
put URL "file:" & tFile into tData
open file tData for read
read from file tData until EOF
put line 1 of URL "file:"&tData into fld"labUrl"
put line 2 of URL "file:"&tData into myVar1
answer myVar1der erste Teil mit dem schreiben klappt aber das auslesen will nicht so recht klappen. Ich bekomme da nur die URL zurück.
lg Immauel
-
Dezember 29, 2022 um 11:47 Uhr #47546
Du solltest nicht die „open file…“ und „URL“ Syntax vermischen!
Ausserdem Schreibvorgänge immer aufs Nötigste reduzieren:
...
## Und nicht so geizig mit LEERZEICHEN sein!
put dataPfad & "tdtdt.txt" into tFile
put CR & fld "Duser" & CR & fld "Dpassword" into tData
put tData into url("file:" & tFile)
put URL ("file:" & tFile) into tData
## tData enhält nun den INHALT der Textdatei!
## Daher geht das hier in die Hose!
## open file tData for read
## read from file tData until EOF
put line 1 of tData into fld "labUrl"
put line 2 of tData into myVar1
answer myVar1
...
-
Dezember 29, 2022 um 14:18 Uhr #47547
Hallo Klaus,
danke für die Info. Aber ich möchte es so machen dass erst mal in die date geschrieben wir. was ja auch geht und später sollen die Werte aus dieser Datei als eigenständiger Prozess wieder gelesen werden.
ich brauch daher den weg wie ich aus einer Datei auslese.
Hintergrund ist dass ich Werte abspeichern möchte die ich nach dem erneuten Öffnen des Programms, wieder auslesen muss um damit weiterzumachen.
entschuldige dass ich das nicht gleich klar kommuniziert habe. Ich habe es nur zum ausprobieren in eine Instanz geschrieben.
LG Immanuel
-
Dezember 29, 2022 um 14:31 Uhr #47548
Aha, verstehe. In dem Fall würde ich die Daten aber paarweise -> Username TAB Passwort
abspeichern. So ist es leichter zusammenhängende Daten auszulesen.
OK, dann halt zwei Handler zum Ein- und Auslesen der Daten.
Speichern:## Ich übergebe hier Username & TAB & Passwort als Parameter
command datenspeichern tDaten
## dataPfad müsstest Du hier ncoh einbauen...
put dataPfad & "tdtdt.txt" into tFile
put CR & tDaten AFTER url("file:" & tFile)
end datenspeichern
Wieder einlesen:
function einlesen
## dataPfad müsstest Du hier noch einbauen...
put dataPfad & "tdtdt.txt" into tFile
## Daten komplett einlesen:
return URL ("file:" & tFile)
## Nun liegt es an Dir, etwas mit tData anzufangen, siehe unten
end einlesen
Hiermit kannst Du den aktuellen User auslesen,
um z.B. das eingebenen Passwort zu vergleichen
function passwort4user tUser
put einlesen() into tData
put lineoffset((tUser & TAB),tData) into tZeile
## User ist im "System", also enprechende Zeile raussuchen und das Passwort (item 2) zurückliefern
if tZeile <> 0 then
set itemdel to TAB
return item 2 of line tZeile of tData
end if
end passwort4user
Fehlerbehandlung überlasse ich Dir! 🙂 -
Dezember 29, 2022 um 16:10 Uhr #47549
oh
Danke für die Hilfe, jetzt ist der Groschen gefallen. Tja habe mich Schin eine Weile nicht mir LiveCode beschäftigt.
Danke noch einmal. Habe es für mich angeglichen und es funkt jetzt.
LG Immanuel
-
-
AutorBeiträge
- Du musst angemeldet sein, um auf dieses Thema antworten zu können.