-----Original Message----- From: Tobias König [SMTP:tokoe82@yahoo.de] Sent: Samstag, 4. Dezember 1999 10:29 To: lug-dd@schlittermann.de Subject: RE: [Lug-dd] Datenbank
Hi Willi,
Wenn ich Text abspeichere, z.B. "Hallo Welt" gibt er mir immer wieder "Hallo Welt#350meh" oder ähnliches zurück...
Na das ist natuerlich nicht so toll ...
Ich habe den Verdacht, das eine Variable nicht richtig gelöscht wird, oder die Länge der Variablen falsch ist.
Geht mir genauso ...
Hast du Ahnung von der gdbm???
Ich hab vor Jahrenden mal was damit gemacht, aber man kann sich ja wieder reinfummeln ...
Was Dein Problem betrifft, so scheinst, dass die Strings nicht oredentlich Nullterminiert sind. Ich hab hier gerade nur HPUX ... $ man dbm, datum ist der Datentyp! -> A datum specifies a string of dsize bytes pointed to ... ... arbitary binary data as well as normal ASCII ... Zu Deutz: dbm (gdbm) verarbeitet alles (key+Daten) als datum. Dabei ist es sch...egal ob ascii oder binary, die Laenge ist entscheidend! !!! Und das ist wahrscheinlich Dein Fehler !!! Preisfrage: Wie lang ist "Hallo Welt" a) 10 Zeichen b) 11 Zeichen c) 12 Zeichen ? Richtig ist b), c) geht auch, a) nicht !!! Ein String ist nullterminiert und besteht aus strlen()+1 Zeichen !!! Gibst Du zumwenig an, wird die abschliessende \0 nicht mitgespeichert/zurueckgelesen und es gibt Datensalat ...
Willi