AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Erkennen von Lines

Ein Thema von homerunjack · begonnen am 2. Sep 2005 · letzter Beitrag vom 3. Sep 2005
Antwort Antwort
Seite 3 von 3     123
homerunjack

Registriert seit: 22. Aug 2005
31 Beiträge
 
#21

Re: Erkennen von Lines

  Alt 3. Sep 2005, 13:12
ich habe davon leider noch keine ahnung wenn das hier irgendwo steht oder du mir dazu ein gutes buch empfehlen kannst dann schreib mal rein

homerunjack
  Mit Zitat antworten Zitat
tigerman33

Registriert seit: 30. Jul 2005
Ort: München
423 Beiträge
 
Delphi 2005 Professional
 
#22

Re: Erkennen von Lines

  Alt 3. Sep 2005, 13:26
Setz dich am besten mal mit Delphi-Referenz durchsuchenTFileStream auseinander.
Hmm oder ich schick dir mal ne Klasse die ich mir abgeleitet hab und direkt typisiert u.a. auch Strings schreiben und lesen kann.
Dann müsstest du ihm beim Laden nur noch folgenden Code (untested) schreiben:

Delphi-Quellcode:
type TEintrag = record
       Name: string;
       Preis: integer;
     end;
var Eintraege = array of TEintrag;

procedure Load(FileName: TFilename);
var i: Integer;
    Count: cardinal;
    F: TAdvFileStream; // Das ist meine Klasse...such ich dir noch raus und schick dir das
begin
  F := TAdvFileStream.Create(Filename, fmOpenRead);
  try
    Count := F.ReadCardinal; // Auslesen wieviele drin sind
   
    SetLength(Eintraege, Count); // Länge des Arrays setzen
    for i := 0 to (Count - 1) do
      with Eintraege[i] do begin // Und dann alle nacheinander auslesen
        Name := ReadStr;
        Preis := ReadInt;
      end;
  finally
    F.Free;
  end;
end;

// Beim Speichern alles einfach in der gleichen Reihenfolge wieder reinschreiben;
procedure Speichern(Filename: TFilename);
var i: integer;
    F: TAdvFileStream;
begin
  F := TAdvFileStream.Create(Filename, fmCreate);
  try
    F.WriteCardinal(length(Eintraege)); // Hier auch: erst abspeichern wie viele Einträge jetzt kommen
    
    for i := 0 to length(Eintraege) - 1 do
      with Eintraege[i] do begin // Dann nacheinander alle reinschreiben
        F.WriteStr(Name);
        F.WriteInt(Preis);
      end;
  finally
    F.Free;
  end;
end;
Nur mal so als grobe Übersicht.

@all:
Ich weiß, dass ihr mich jetzt gleich zerreißen werdet, weil's kein OOP ist und noch dazu globale Variablen verwendet. Ist aber ja auch nur ein Beispiel.

PS: Benutz doch bitte in Zukunft für Quellcode die Delphi-Tags! Das kann ja kein Mensch lesen so.

//edit
So hier auch die Unit
Angehängte Dateien
Dateityp: pas advancedstreams_307.pas (15,2 KB, 2x aufgerufen)
Christian
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#23

Re: Erkennen von Lines

  Alt 3. Sep 2005, 15:51
Hi homerunjack,

Zitat von tigerman33:
Benutz doch bitte in Zukunft für Quellcode die Delphi-Tags!
du kannst sogar deine Beiträge der letzten 24 Stunden bearbeiten und so lesbarer machen. Die Delphi-Tags - [.delphi] und [./delphi] ohne den Punkt - kannst du schreiben oder mit dem Button aus der Toolbar oberhalb vom Beitragseditor einbauen. Damit erhöhst du die Aufmerksamkeit für deine Beiträge und die Chance wächst, dass dir jemand mit didaktischem Geschick Ratschläge erteilt, die du mit deinem Kenntnisstand auch umsetzen kannst.

Bevor du den eingeschlagenen Weg weiter gehst - hast du dir mal ein Haushaltsbuch angesehen? Ein Datensatz sollte mindestens folgende Informationen enthalten: Datum, Text, Einnahme, Ausgabe. Die Darstellung sollte tabellarisch erfolgen. Speichern kannst du die Daten auch tabellarisch. Als CSV-Datei:

Code:
Datum, Text, Einnahme, Ausgabe
2005-09-01,"Gehalt,Rente,Sonstiges",9999.99,
2005-09-03,DSL-Flatrate,,1.99
oder auch in einer relationalen Datenbank als Tabelle.

Bei der tabellarischen Darstellung ist die schon erwähnte ListView sehr hilfreich, aber für den Anfang kannst du auch mit einem StringGrid experimentieren.

Wenn dich mein Beitrag irritiert, dann übersehe ihn einfach und mache da weiter wo du stehst.

Freundliche Grüße vom marabu
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 23:45 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