lokale Datenspeicherung ohne DB
-
Hallo Leute,
ich suche zurzeit eine Möglichkeit Informationen lokal in einer Datei zu speichern. Bislang habe ich alle Daten immer in Textdateien gespeichert. Allerdings ist das (finde ich) ziemlich umständlich wenn man viele Daten hat und man aber nur bestimmte Daten auslesen will.
Gibt es eine Möglichkeit Daten in Form einer Tabelle o.Ä. lokal ohne Verwendung von MySql oder anderen Datenbanken zu speichern?
Worauf ich hinaus will ist, dass ich möglichst einfach die Informationen speichern kann ohne, dass ein externes Programm (Server,...) notwendig ist.Danke schon mal im voraus...
LG,
Dago
-
Das kannst du immer noch mit einer Textdatei machen.
Du musst halt einfach nur eine Klasse erstellen, mit der du einzelne Datensätze auslesen und zurückschreiben kannst.
-
Sqlite ist eine embedded-DB, d.h. kein Server aber verhältsich innerhalb deines Programms wie ein SQL-Server. Ist eine C-Library, es gibt aber C++-Wrapper.
Dann kannst du noch http://www.boost.org/libs/serialization/doc/index.html anschauen. Ist keine Embedded-DB, aber damit kann man Daten persistieren und beim nächsten Mal 1:1 wieder herstellen.
-
Für solche Zwecke verwende ich immer das Prinzip
Record-In-File.Ich definiere eine Struktur die im prinzip alle Tabellenspalten abbildet.
Diese struktur schriebe ich dann ins File.
Der Vorteil dabei ist auch das dieses File mit einem Standard-Editor vom User nicht einsehbar ist.mfg.
Wes
-
Der Vorteil dabei ist auch das dieses File mit einem Standard-Editor vom User nicht einsehbar ist.
Bei mir kommt die Frage auf, ob dies tatsächlich als Vorteil anzusehen ist. Ich bin für offene Dateiformate. Am besten finde ich XML-konforme Dokumente, da so die Kompatibilität zu anderen Anwendungen deutlich vereinfacht wird.
Als Beispiel: Ich bin dabei einen Nassi-Shneiderman-Diagramm Editor zu schreiben. Die Dokumente sind in abgespeicherter Form XML-konform, sodass es ohne größere Probleme möglich ist, dass andere Programme (unter Verwendung einer geeigneten Transformation) dieses Dokumente öffnen bzw. verarbeiten können, da die DTD freigegeben wurde.
Grüße Martin
-
grundsätzliche stimme ich Dir (lucky_tux) zu. Solange es um reine Informationen handelt macht dies auch sicher Sinn.
Man stelle sich aber vor das in solch einer Datei auch Daten hinterlegt sind die über eine referentielle integrität verfügen. Wohl dem der da Werte ändert
Gruß
Wes