AGB  ·  Datenschutz  ·  Impressum  







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

dynamischen Array laden

Offene Frage von "Larky"
Ein Thema von Larky · begonnen am 2. Nov 2006 · letzter Beitrag vom 2. Nov 2006
Antwort Antwort
Seite 1 von 2  1 2      
Larky

Registriert seit: 9. Okt 2006
Ort: Leichlingen
13 Beiträge
 
Turbo Delphi für Win32
 
#1

dynamischen Array laden

  Alt 2. Nov 2006, 09:21
Hallo Zusammen!
Bin ganz neu hier, habe nämlich keine Delphi-Hilfe( obwohl ichs legal runtergeladen habe) deswegen musste ich bisher also alle KLeinigkeiten hier nachlesen! Soweit auch kein Problem nur dass ich jetzt dabei bin meinen dynamischen Array zu speichern! Soweit klappt das ja auch der speichert das dann als TStringList!
Nur da ich ja nicht weiß wie groß mein Array ist, weiß ich auch nicht wie ich den laden soll!!!

Bitte bitte brauche gaanz schnell hilfe da mein prog am Freitag fertig sein sollte!
Danke schon mal im vorraus
Grüße Larky
Jasmin
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: dynamischen Array laden

  Alt 2. Nov 2006, 09:30
Wie speicherst du ihn den?
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: dynamischen Array laden

  Alt 2. Nov 2006, 09:31
Was für ein Array? Woraus willst du das Laden? Was hat das ganze mit einer TStringList zu tun?
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
fwsp
(Gast)

n/a Beiträge
 
#4

Re: dynamischen Array laden

  Alt 2. Nov 2006, 09:33
welche delphi-version hast du denn, das da gar keine hilfe drin sein sollte (noch nicht mal ne schlechte...).
zeig doch mal ein bisschen code.
  Mit Zitat antworten Zitat
Larky

Registriert seit: 9. Okt 2006
Ort: Leichlingen
13 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: dynamischen Array laden

  Alt 2. Nov 2006, 10:05
ich benutze Turbo Delphi, da wir das von der BA halt bekommen haben!
Das ist nen Terminkalenderprogramm für ne Arztpraxis
das heißt ich schreibe alle Termine in einen array of array of String!
die zeilen anzahl ist halt immeer 133 (erste Zeile für den SChlüssel zum suchen und so; und die restlichen halt für die Uhrzeit nen im 5 Minuten Takt) Die Spalten anzahl richtet sich halt nach dem Benutzer für jeden Tag pro Therapeut wird eine neue Spalte erzeugt!

Als ich mich zum Thema Speichern und Laden umgeschaut hab hab ich halt ne Prozedur gefunden die das als TStringList speichert!!

Also hier meine speicher prozedur

procedure TFStartseite.speichernClick(Sender: TObject);
var i, j: integer;
slDaten: TStringList;
begin
slDaten := TStringList.Create;
for i := 0 to high(Oberarray) do
for j := 0 to 132 do
slDaten.Add((oberarray[i, j]));
slDaten.SaveToFile('termine');
slDaten.Free;
end;


das klappt auch so weit super!!

hier jetzt die Laden Prozedur:

procedure TFStartseite.LadenClick(Sender: TObject);
var
i, j, Count: integer;
slDaten: TStringList;

begin
slDaten := TStringList.Create;
slDaten.LoadFromFile('termine');
Count := 0;
for i := 0 to (???) do <-- hier ist das Problem weil ich nicht weiß wie groß die Liste ist!!
for j := 0 to 132 do
begin
Oberarray[i, j] :=(slDaten[count]);
inc(Count);
end;
slDaten.Free;
end;
Jasmin
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.755 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: dynamischen Array laden

  Alt 2. Nov 2006, 10:07
Also, wenn es eine TextDatei ist, dann kannst DU sie mit einer Stringlist laden.
StringList.loadfromFile Oder du kannst das ganze auch zu Fuß erledigen.

Delphi-Quellcode:
Datei: TextFile;
einZeile:String;

AssignFile(Datei,'Da wo Deine Datei liegt und wie sie heißt');
Reset(Datei);
While not eof(Datei) do
begin
  Readln(datei,eineZeile);
end;
CloseFile(datei)
oder habe ich da etwas ganz falsch verstanden?

Edit: for i := 0 to SlDaten.count -1 do

Edit2: kannst Du vielleicht mal eine Datei anhängen, ich kann mir nicht vorstellen wie die so ausschaut.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.487 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: dynamischen Array laden

  Alt 2. Nov 2006, 10:09
Ich würd mal tippen
trunc(slDaten.Count / 133) Denn ein Block besteht doch immer aus 133 Einträgen (0..132)
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Benutzerbild von ibp
ibp

Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
 
Delphi 7 Architect
 
#8

Re: dynamischen Array laden

  Alt 2. Nov 2006, 10:12
Delphi-Quellcode:
procedure TFStartseite.LadenClick(Sender: TObject);
var
  i, j: integer;
  slDaten: TStringList;

begin
  slDaten := TStringList.Create;
  slDaten.LoadFromFile('termine');
  for i := 0 to slDaten.count-1 do <-- hier ist die lösung!!!!
  begin
    for j := 0 to 132 do
    begin
      Oberarray[i, j] :=slDaten[i];
    end;
  end;
  slDaten.Free;
end;
  Mit Zitat antworten Zitat
c64ranni

Registriert seit: 27. Okt 2006
Ort: Vomp
10 Beiträge
 
Delphi 5 Professional
 
#9

Re: dynamischen Array laden

  Alt 2. Nov 2006, 10:20
Hallo!
I würds einfach so machen
Delphi-Quellcode:
procedure Speichern(Sender: TObject);
var i, j: integer;
slDaten: TStringList;
begin
slDaten := TStringList.Create;
slDaten.Add(InttoStr(HIGH(Oberarray)=);
for i := 0 to high(Oberarray) do
for j := 0 to 132 do
slDaten.Add((oberarray[i, j]));
slDaten.SaveToFile('termine');
slDaten.Free;
end;
Damit hasch jetzt in der ersten Zeile der Stringlist die Länge stehen.
Beim Laden kannst die die Erste Zeile auslesen und dann hast den Count.
Aber ich schätze mal, dass es sich mit dem
slDaten.Count div 133 auch ausgehen müssten.


edit: Sorry hab das INttoStr vergessen.
Wenn du ein dynamisches Array hast, dann ist die Laderoutine von dir aber noch nicht fertig.
Du musst noch die Länge des dynamischen Arrays festelgen.
  Mit Zitat antworten Zitat
Larky

Registriert seit: 9. Okt 2006
Ort: Leichlingen
13 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: dynamischen Array laden

  Alt 2. Nov 2006, 10:22
ja aber die Frage ist wie ich das in meinen array reinbekomme !

HAb es jetzt wie folgt gelöst:

var
i, j, Count: integer;
slDaten: TStringList;
Laengetxt:real;

begin
slDaten := TStringList.Create;
slDaten.LoadFromFile('terminehedrich');
Count := 0;
Edit1.text:=inttostr (sldaten.Count);
Laengetxt:=sldaten.count/133;
for i := 0 to round (Laengetxt) do
for j := 0 to 132 do
begin
Setlength (Oberarray,i+1);
Oberarray[i, j] :=(slDaten[count]);
inc(Count);
end;
slDaten.Free;
end;


Problem nur der gibt mir nen Fehler aus das das Listenmaximum (133) überschritten wurde aber das kann doch gar nicht sein da meine for-SChleife nur bis 132 geht!! Ich krieg hier langsam echt nen Anfall!! AGGRESSIONEN!!!!!
Jasmin
  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 02:40 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