Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi wie soll ich mein projekt speichern? (https://www.delphipraxis.net/99259-wie-soll-ich-mein-projekt-speichern.html)

overlord99 9. Sep 2007 16:13


wie soll ich mein projekt speichern?
 
Hey Leutz,

ich arbeite an einem Projekt, das man sich wie eine Art Fragebogen vorstellen kann. Durch eine Listbox gibt es verschiedene Themen zu denen man navigieren kann und diese Themen haben wiederrum unterschiedliche Tabs, auf denen sich Edit-Felder, Memos oder Stringgrids befinden, in welchen man Eingabe vornimmt.

Nun will ich die eingegebenen Daten speichern.
Ich frage mich nun, wie ich diese Datei am besten strukturieren soll.
An und für sich wäre der Aufbau einer ini-Datei perfekt, da es dort auch Themen (Abschnitte) mit Unterpunkten gibt.

Ein weiteres Problem stellen die unterschiedlichen Typen für mich dar: Die Eingaben aus den Edit-Feldern (z.B. Name, Tel, Adresse...) könnte man ja als shortstring speichern. Die Eingaben aus den Memos jedoch nicht.
Trotzdem sollte dies alles in einer Datei gespeichert werden.

Was würdet ihr mir vorschlagen??

RavenIV 10. Sep 2007 07:55

Re: wie soll ich mein projekt speichern?
 
Meine Vorschläge:
a) ini-Datei: Da hast Du halt das Problem mit den Zeilenumbrüchen in Memos.
b) Eine Record-Datei: erstell Dir einen Record, in dem Du alle Daten ablegst, dann speichere diesen in eine Datei.
c) Embedded Datenbank: hier kannst Du alle Werte in ein eigenes Feld speichern. Wenn Du willst, kannst Du ja für jede Kategorie eine eigene Tabelle erstellen.

zu a) das wurde hier schon mehrfach durchgekaut.
zu b) wenn Du die Suche bemühst, wirst Du auch genug Infos finden
zu c) ist bestimmt übertrieben, aber ne gangbare Möglichkeit.

Mavarik 10. Sep 2007 07:59

Re: wie soll ich mein projekt speichern?
 
Hi!

Speicher es doch einfach in einer Textdatei...

Beispiel

@Memo1:Bla bla bla
bla bla bal
@Edit1:Cooles Programm

usw...

Memofelder einfach mit Stringreplace('#13#10','
'... umformen

Grüsse Frank

Luckie 10. Sep 2007 08:29

Re: wie soll ich mein projekt speichern?
 
Ich werfe noch mal XML-Dateien in die Runde.

Mavarik 10. Sep 2007 08:38

Re: wie soll ich mein projekt speichern?
 
Zitat:

Zitat von Luckie
Ich werfe noch mal XML-Dateien in die Runde.

Stimmt...

Datenmenge und optimierte Speicherung interessiert ja heute nicht mehr...

Da merke ich wieder wie alt ich bin... lol

Grüsse Frank

Luckie 10. Sep 2007 08:46

Re: wie soll ich mein projekt speichern?
 
Jedes Speicherformat hat Vor- und Nachteile. Versuch du mal eine Baumstruktur mit mehr als zwei Ebenen in einer Ini-Datei abzubilden.

overlord99 10. Sep 2007 09:35

Re: wie soll ich mein projekt speichern?
 
OK, erstmal danke für die Vorschläge.

Aber, wenn ich eine ini-Datei nutzen will und diese über einen SaveDialog in ein anderes Verzeichnis als das Hauptverzeichnis schieben will, dann kommt bei mir zur Laufzeit eine Fehlermeldung.

turboPASCAL 10. Sep 2007 09:37

Re: wie soll ich mein projekt speichern?
 
Zitat:

Zitat von Mavarik
Zitat:

Zitat von Luckie
Ich werfe noch mal XML-Dateien in die Runde.

Stimmt...

Datenmenge und optimierte Speicherung interessiert ja heute nicht mehr...

Da merke ich wieder wie alt ich bin... lol

Grüsse Frank

:mrgreen: Ich sag jetzt nix....

Oder Doch ?

* CVS-Datei,
* File of Record

XML ist mir pers. zu komplex und Festplattenfüllend. Auserdem kann die jeder sofort lesen zB. per IE.

Zitat:

Zitat von overlord99
OK, erstmal danke für die Vorschläge.

Aber, wenn ich eine ini-Datei nutzen will und diese über einen SaveDialog in ein anderes Verzeichnis als das Hauptverzeichnis schieben will, dann kommt bei mir zur Laufzeit eine Fehlermeldung.

Stimmt das Verzeichnis ?


:arrow: Bitte bei neuer Frage einen neuen Thread eröffnen.

freak4fun 10. Sep 2007 09:40

Re: wie soll ich mein projekt speichern?
 
Hi,
hast du da Schreibrechte? Speicher die Ini im Benutzerpfad. ;)
Ansonsten: WElche Fehlermeldung? Zeige doch den Code hier, hier kann niemand hellsehen. :stupid:

MfG
freak

overlord99 10. Sep 2007 10:03

Re: wie soll ich mein projekt speichern?
 
OK, also hier der Quellcode:

Delphi-Quellcode:
procedure TFrame1.Speichern;
var F: TiniFile;
begin
  if SaveDialog1.Execute then
    begin
      try
        F:=TIniFile.create(ExtractFilePath(ParamStr(0))+SaveDialog1.Filename);
        F.WriteString('Kenndaten','Name',EKenndaten[1].text);
      finally
        F.Free;
      end;
    end;
end;
Wenn ich keine Berechtigung habe, dann bekomme ich von Windows eine Meldung. Er fragt mich dann, ob ich im Ordner 'Dokumente' speichern will, klicke ich dann auf 'JA' und speichere, dann kommt folgende Fehlermeldung von Delphi:

Im Projekt test.exe ist eine Exception der Klasse TIniFileException mit der Meldung 'In C:\Users\Sebastian\Desktop\Projekt\C:\Users\Sebast ian\Documents\test.ini kann nicht geschrieben
werden' aufgetreten


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:12 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz