AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Speichern - ein großes Problem

Ein Thema von Bruce86 · begonnen am 14. Mär 2007 · letzter Beitrag vom 15. Mär 2007
Antwort Antwort
Seite 1 von 2  1 2      
Bruce86

Registriert seit: 14. Apr 2006
Ort: Magdeburg
51 Beiträge
 
#1

Speichern - ein großes Problem

  Alt 14. Mär 2007, 23:57
So nun hoffe ich mal dass ihr mir, wie in den letzten tag, auch noch hierbei helfen könnt!
Es geht um das speichern!

Ich würde ganz gerne die Daten, die für die schüler eingegeben werden, die auswahl der chekcboxen auf den schüler bezogen, sowie das bild was zu dem schüler gehört in eine rdatei speichern! wenn es nicht gleich für mehrere geht würde es mir auch erstmal für einen schüler reichen!
Weiß das klingt unheimlich viel hoffe nur es ist nciht wirklich so viel wie es sich anhört!

Vllt erkläre ich nochmal kurz was in meinem Projekt vorgeht!

Also(siehe screenshot) es werden bei den schülerdaten die Daten der schüler(Name, Vorname etc pp) engegeben dann werde diese an die listbox übermittelt und können dann wieder in die edits zurückgegeben werden! weiterhin wählt man die fächer für jeden schüler aus und sofern vorhanden lädt man ein bild für diesen schüler hoch!
Meins ziel ist eigentlich dass alle daten aller schüler einer Schulklasse später in einer datei gespeichert werden! Ich glaube fast dass das eine ewigkeit braucht bis ich soweit bin aber wenn ihr mir hier im ansatz helfen könntet wäre das super! notfalls muss es eben für jeden schüler abgespeichert werden!

Das gleiche problem würde dann beim laden auftreten aber wenn das speichern erstmal realisiert ist denke ich mal kann ich mich in den rest dann weiter reinfuchsen!

Hoffe es gibt eine lösung für mein problem! ok gibt es sicherlich denn andere programme können es ja auch aber ob das dann nicht alles zu hoch gegriffen ist? Ich glaube das ist wohl eher das problem! Vielen Dank schon mal für eure hilfe!
Miniaturansicht angehängter Grafiken
formular_200.jpg  
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Speichern - ein großes Problem

  Alt 15. Mär 2007, 00:16
Dafür würde sich eine XML-Datei anbieten, denke ich.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Billi Berserker
(Gast)

n/a Beiträge
 
#3

Re: Speichern - ein großes Problem

  Alt 15. Mär 2007, 01:03
Es gäbe mehrere Möglichkeiten

Wie bereits schon erwähnt eine XML Datei,
da würden die Daten in etwa so gespeichert:
XML-Code:
<Klasse>
  <Schüler>
    <Name>123</Name>
    <Vorname>456</Vorname>
  </Schüler>
  <Schüler>
    <Name>abc</Name>
    <Vorname>def</Vorname>
  </Schüler>
</Klasse>
uws.
Das benutzen von so einfachen XML Dateien geht meiner Meinung nach am besten mit der TJvSimpleXML Komponente die bei JVCL dabei ist.


Eine Alternative wäre die Daten ganz normal in eine Text Datei zu schreiben.
Hierfür würde ich mich der TStringList Komponente bedienen und die CommaText Eigenschaft selbiger gnadenlos ausnutzen.
D.h. beim speichern fügst du die Daten für jeden Schüler in einer bestimmten Reihenfolge in eine TStringList. Mit TStringList.commatext bekommst du damit einen Schüler in einer Textzeile. Diese eine zeile speicherst du in die Textdatei für jede Klasse. Der zweite Schüler wird dann in die zweite Zeile gespeichert, etc.
sieht dann in etwa so aus:
"123","456","...","..."
"abc","def","...","..."
Beim laden machst du das ganze rückwärts. Du ließt die Textdatei Zeilenweise aus und lädst die Komma Text Zeile rückwärs in deine TStringList. Damit hast du die einzelnen Elemente des Schülers dann wieder in der StringList...
So ists zwar nicht gerade besonders schön, aber man spart sich den streß die Zeile per hand auseinander zu nehmen
  Mit Zitat antworten Zitat
Bruce86

Registriert seit: 14. Apr 2006
Ort: Magdeburg
51 Beiträge
 
#4

Re: Speichern - ein großes Problem

  Alt 15. Mär 2007, 07:55
Ok! Dashört sich schon mal sehr gut an!
Doch hier gleich mal ne frage zu! Was ist mit den variablen gemeint also 123;456;abc...
Was soll an die stelle dieser Variablen?
Und wie kann ich dort das zu dem schüler gehörige Foto abspeichern?

Wäre mal ein ganzer quellcode mit erläuterungen drinne? könnt ja dann ne erklärung hinschreiben wo ich es selbst dann konfigurieren muss was also dannan diese stelle muss! muss ich zuvar records oder der gleichen deklarieren?

MFG

Bruce86
  Mit Zitat antworten Zitat
Benutzerbild von bitsetter
bitsetter

Registriert seit: 17. Jan 2007
1.169 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Speichern - ein großes Problem

  Alt 15. Mär 2007, 08:32
Hi,

wie groß sind die Bilddateien, welches Bildformat haben diese und haben die Bilder sogar die gleiche Dateigröße?
Gruß bitsetter
"Viele Wege führen nach Rom"
Wolfgang Mocker (geb. 1954), dt. Satiriker und Aphoristiker
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Speichern - ein großes Problem

  Alt 15. Mär 2007, 08:44
Zitat:
Und wie kann ich dort das zu dem schüler gehörige Foto abspeichern?
Du speicherst einfach den Dateinamen des Bildes.

(123 steht da für den Namen z.B.: Meier)
(456 entsprechend für Max)
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
Bruce86

Registriert seit: 14. Apr 2006
Ort: Magdeburg
51 Beiträge
 
#7

Re: Speichern - ein großes Problem

  Alt 15. Mär 2007, 09:08
Die Bilddateien liegen um die 30kb und weniger und sind im *.bmp gespeichert
  Mit Zitat antworten Zitat
Billi Berserker
(Gast)

n/a Beiträge
 
#8

Re: Speichern - ein großes Problem

  Alt 15. Mär 2007, 11:11
Die bmp Dateien würde ich einfach so als Bitmaps speichern, eventuell in nem extra ordner.

Beispiel code für XML (blind programmiert und nicht getestet)
(ich habe auch keine ahnung wie dein code strukturiert ist, hier so wie ich es machen würde - weiß auch gerade nicht ob ü in xml als item name geht)
Delphi-Quellcode:
procedure Speichern;
var
  n : integer;
  XML : TJvSimpleXML
  Schüler : TSchüler
begin
  XML := TJvSimpleXML.Create(nil);
  try
    XML.Root.Name := 'Klasse X';
    for n := 0 to SchülerList.Items.Count - 1 do
        with XML.Root.Items.Add('Schüler').Items do
        begin
          item := TSchüler(SchülerList.Items.Item[n]);
          Add('Name',Schüler.Name);
          Add('Vorname',Schüler.Vorname);
          ...
            // restlichen Eigenschaften
          ...
          Schüler.Bitmap.SaveToFile('C:\Fotos\' + Schüler.Name + ' ' + Schüler.Vorname + '.bmp');
        end;
    XML.SaveToFile('C:\klassex.xml');
  finally
    XML.Free;
  end;
end;

procedure Laden;
var
  n : integer;
  XML : TJvSimpleXML;
  Schüler : TSchüler
begin
  XML := TJvSimpleXML.Create(nil);
  try
    XML.LoadFromFile('C:\klassex.xml');
    for n := 0 to XML.Root.Items.Count - 1 do
        with XML.Root.Items.Item[n].Items do
        begin
          Schüler : TSchüler.Create;
          Schüler.Name := Value('Name');
          Schüler.Vorname := Value('Vorname');
          ...
          // restlichen Eigenschaften
          ...
          Schüler.Bitmap.LoadToFile('C:\Fotos\' + Schüler.Name + ' ' + Schüler.Vorname + '.bmp');
          SchülerList.Items.Add(Schüler);
        end;
  finally
    XML.Free;
  end;
end;
  Mit Zitat antworten Zitat
Bruce86

Registriert seit: 14. Apr 2006
Ort: Magdeburg
51 Beiträge
 
#9

Re: Speichern - ein großes Problem

  Alt 15. Mär 2007, 11:12
Wie setze ich das:
Zitat:
<Klasse>
<Schüler>
<Name>123</Name>
<Vorname>456</Vorname>
</Schüler>
<Schüler>
<Name>abc</Name>
<Vorname>def</Vorname>
</Schüler>
</Klasse>
fort wenn es um die bilder,die auswahl der fächer(checkboxen) und Telfonnummern etc geht????

Könnt ihr das mal so an einem beispiel ausführlich ausschreiben?

Wäre Super

Vielen Dank im Vorraus

Bruce86
  Mit Zitat antworten Zitat
Bruce86

Registriert seit: 14. Apr 2006
Ort: Magdeburg
51 Beiträge
 
#10

Re: Speichern - ein großes Problem

  Alt 15. Mär 2007, 11:20
Hi Billi Berserker!

muss ich dafür vorher ein record deklarieren?

Delphi-Quellcode:
type Tschueler = record
     Name :string;
     Vorname: string;
         .
         .
         .
     end;
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:33 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz