Einzelnen Beitrag anzeigen

Benutzerbild von flomei
flomei

Registriert seit: 17. Jan 2003
Ort: Schieder-Schwalenberg
2.094 Beiträge
 
Delphi 2005 Personal
 
#7

Re: Per ReadLn() zufällige Zeile aus Textdatei lesen

  Alt 15. Dez 2003, 19:34
Seltsam...
Ich habe zwei TXT´s mit Namen...

1. Bei den weiblichen Namen klappt fast alles. Da fehlt immer der erste Buchstabe. <-- Warum?
2. Bei den männlichen wird immer nur ein einziger Namen, der erste in der der Datei, angezeigt. <-- Warum?

Danke im Vorraus!

MfG Florian

[EDIT] Ich habe folgenden Code und anscheinend werden bei den weiblichen auch immer nur die mit A am Anfang angezeigt...
Delphi-Quellcode:
procedure TMain_Form.OpenFiles(Sender: TObject);
  begin

{ Es folgt das Öffnen der Textdateien in denen die Namen stehen...
  Wenn die Dateien leer sein sollten erscheint eine Warnmeldung...  }


//Männer Namen
  begin
    m_namen := TStringList.Create;
    m_namen.LoadFromFile(ExtractFileDir(ParamStr(0)) + '\m.txt');
    if
      m_namen.Count = 0
    then
    raise Exception.Create('Die Datei ist leer.');
    anzahl_m := Random(m_namen.Count);
  end;

//Frauen Namen
  begin
    w_namen := TStringList.Create;
    w_namen.LoadFromFile(ExtractFileDir(ParamStr(0)) + '\w.txt');
    if
      w_namen.Count = 0
    then
    raise Exception.Create('Die Datei ist leer.');
    anzahl_w := Random(w_namen.Count);
  end;

//Nachnamen
  begin
    nach_namen := TStringList.Create;
    nach_namen.LoadFromFile(ExtractFileDir(ParamStr(0)) + '\nach.txt');
    if
      nach_namen.Count = 0
    then
    raise Exception.Create('Die Datei ist leer.');
    anzahl_nach := Random(nach_namen.Count);
  end;

end;
und dann der "Aufruf":
Delphi-Quellcode:
procedure TMain_Form.Btn_GenerateNameClick(Sender: TObject);
  begin
      if
        RBtn_male.Checked
      then
        begin
          vorname := m_namen.ValueFromIndex[Random(anzahl_m)];
          Edt_Name.Text := vorname
        end
      else
        begin
          vorname := w_namen.ValueFromIndex[Random(anzahl_w)];
          Edt_Name.Text := vorname
        end
  end;
Die Nachnamen habe ich erst mal rausgelassen... [/EDIT]
Florian Meier
... ist raus.
Vielen Dank für die Zeit mit euch!
http://www.flomei.de -- http://www.md5hash.de
  Mit Zitat antworten Zitat