Entwickler-Ecke

Dateizugriff - Datei nach neu start des Programm auslessen?? (Miss wahlen)


Foxhunting - Do 24.01.08 00:55
Titel: Datei nach neu start des Programm auslessen?? (Miss wahlen)
Hey

Es geht mal wieder um das Misswahlen Programmen kurz zur erklärung:
- habe in einem Memo 120 Namen von Frauen stehen
- lass mir davon 10 stück über Randomize ausgeben

und jetz das Problem

wenn ich durch eine Randomize mir aus dem Memo 10 Zeilen zufällig ziehen lasse. Kann ich dann diese ausgabe speicheren und das beim wieder öffnen des Programm auslessen lassen das die nicht noch mal gezogen werden weil es jeden Monat eine wahl statt finden soll und im Jahr keine doppel erscheine soll??

Wenn ihr was net versteht dann schreiben versuche es dann besser zu erklären!!!

MfG Fooxhunting


Jann1k - Do 24.01.08 01:05

natürlich kannst du das schau dir dazu mal die klassen tinifile oder tfilestream an


Foxhunting - Fr 25.01.08 18:21

OK habe da schon bissel geschaut.
Kann das mal jemdan erklären wie das so funktioneirt???

mfg foxhunting


Jann1k - Fr 25.01.08 18:47

knants ud ezrählne wsa du an den klasesn nicht verstesht?


ub60 - Fr 25.01.08 18:56

Eigentlich wollte ich ja nur helfen, wenn bei den Missen auch Fotos dabei sind .. :rofl: :rofl:
Naja, trotzdem eine Idee.
Leiste Dir noch eine zweite Memo-Komponente, eine Listbox oder eine Stringliste. Die haben alle drei das was Du benötigst:

Beispiel:

Delphi-Quelltext
1:
2:
3:
Missi:=MissMemo.Lines[Zufallszahl];
if AuswahlMemo.Lines.IndexOf(Missi)=-1
  then {noch nicht gewählt}


ub60


Foxhunting - Fr 25.01.08 20:23

user profile iconJann1k hat folgendes geschrieben:
knants ud ezrählne wsa du an den klasesn nicht verstesht?


wie ich die ein baue wiel wir so was noch nicht hatten und so wie es aus sieht auch nicht machen werden!! weil die Hilfe im Delphi komme ich nicht so dirkt weiter oder hast eine idee wo ich noch nach schauen kann??

Mfg Foxhunting


Blackheart666 - Fr 25.01.08 20:42

Hier sollt es hin :wink:
Du hast doch nun in deinen anderen Thread wo es um das gleiche Thema geht schon genug Vorschläge und Beispiele bekommen, so langsam müsste es doch was werden.


Foxhunting - Fr 25.01.08 20:45

Ja Klar langsm wird es aber haber erst mit Delphi angefangen und werden aber auch schon bald C++ weiter machen.(in der Schule) deswegen!! aber langsam nimmt es gestallt an. und den anderen Thrad habe ich später erstellt weil man soll keine 2 Fragen in einem Thrad schrieben. wegen durcheinander kommen. wurde mit gesagt!!

Aber Danke für di großzüge Hilfe

Foxhunting


Foxhunting - So 27.01.08 23:37

Also habe mal bissel versucht aber komme mal wieder nicht weiter. :autsch:
Ich will jetzt überprüfen ober der gezogene Eintrag schon inder INI-Datei ist oder nicht??
so sieht es jetzt aus!!


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
var
  i, LineNumber : Integer;
  Zeilen: TStringList;
  ini: TIniFile;
  z:string;
begin
  Zeilen := TStringList.Create;
  Zeilen.AddStrings(Memo1.Lines);
  ini:=TIniFile.Create('E:\Alexander_Müller\Arbeiten_Comp\Miss_wahl\Miss_Neu\Frauen.ini');
  for i := 1 to 10 do
  begin
    randomize;
    LineNumber := Random(Zeilen.Count);
    Memo2.Lines.Add(Zeilen[LineNumber]);
    if Zeilen[LineNumber] = 'Frauen.ini' then
      begin
      LineNumber := Random(Zeilen.Count);
      Memo2.Lines.Add(Zeilen[LineNumber]);
      end;
    ini.WriteString(timeToStr(time), 'name '+ IntToSTr(i), Zeilen[LineNumber]);
    Zeilen.Delete(LineNumber);
  end;
  Zeilen.Free;


wenn ihr ideen habe oder vorschläge wie ich es Programmiernen kann!! dann her damit!
Habe mir auch die anderen sachen durch gelesen aber so richtig komm ich nicht da hinter! :cry:
Ich hoffe ihr könnt mir Helfen!!

Danke an alle die Helfen

Mfg Foxhunting

Moderiert von user profile iconNarses: Code- durch Delphi-Tags ersetzt


ub60 - Mo 28.01.08 00:23

Vergiss die INI-Dateien. Die sind für diese Aufgabenstellung absolut ungeeignet! Nicht dass es nicht gehen würde, aber es ist nicht sinnvoll.
Du solltest noch mal meinen Tipp von oben lesen. Da hast Du das Prob in ca. 10 Zeilen gelöst.

ub60


Foxhunting - Mo 28.01.08 00:52

ok dann mal ne frage dazu
ub60

user profile iconub60 hat folgendes geschrieben:

Beispiel:

Delphi-Quelltext
1:
2:
3:
Missi:=MissMemo.Lines[Zufallszahl];
if AuswahlMemo.Lines.IndexOf(Missi)=-1
  then {noch nicht gewählt}



SO richtig begreife ich das IndexOf net? :nixweiss:
müsste nicht nach den then was kommen?? die ich schon gezogen habe oder so (Datei???)
weil sonst muss ich doch dafür sorgen das er die mir nicht doppel bringt das ist mein Problem muss ich nicht eine datei nehmen wo ich das hin speicher???
Weil wenn ich das Programm schließe und wieder öffne weiß er ja nicht welcher er schon mal gezogen hat oder??

Aber Danke erstmal

PS: Werde mal das um Programmieren versuchen!!