AGB  ·  Datenschutz  ·  Impressum  







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

Auslesen aus Ini

Ein Thema von Dr4ke · begonnen am 5. Mär 2009 · letzter Beitrag vom 5. Mär 2009
Antwort Antwort
Seite 2 von 2     12   
Dr4ke

Registriert seit: 12. Mai 2007
39 Beiträge
 
#11

Re: Auslesen aus Ini

  Alt 5. Mär 2009, 18:08
Ja, den Eintrag gibt es.

Hier einmal die komplette Ini-Datei mit nur einer Section:

Zitat:
[Mustermann, Max]
Geburtstag=12.07.1980
Telefon=081555
Handy=081508150815
E-Mail=Mustermann@gmx.de
ICQ=0815
MSN=Mustermann@gmx.de
Die Procedure zum eintragen ist folgende:

Delphi-Quellcode:
procedure datenSpeichern(var nachname, vorname, geb, nummer, handy, email, icq, msn : string; ini : TIniFile);
begin
ini := TIniFile.Create(ExtractFilePath(ParamStr(0))+'liste.ini');

ini.WriteString(nachname+', '+vorname, 'Geburtstag', geb);
ini.WriteString(nachname+', '+vorname, 'Telefon', nummer);
ini.WriteString(nachname+', '+vorname, 'Handy', handy);
ini.WriteString(nachname+', '+vorname, 'E-Mail', email);
ini.WriteString(nachname+', '+vorname, 'ICQ', icq);
ini.WriteString(nachname+', '+vorname, 'MSN', msn);
ini.Free;
end;

Zum auslesen benutze ich:

Delphi-Quellcode:
procedure TForm1.btnSucheClick(Sender: TObject);
var
ini : TIniFile;
nachname, vorname : string;
begin

ini := TIniFile.Create('liste.ini');
try
  labelVorname.Caption := edtSucheVorname.Text;
  labelName.Caption := edtSucheNachname.Text;
  labelMSN.Caption := ini.ReadString(nachname+', '+vorname, 'MSN', '');

finally
  ini.free;

end;
end;


P.S.: Tatsächlich, das Auslesen funktioniert generell nicht, da muss es einen massiven Fehler geben, den ich allerdings nicht ausfindig machen kann. Das arbeiten mit Ini Dateien hab ich mir von dsdt abgeschaut.
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.336 Beiträge
 
Delphi XE2 Professional
 
#12

Re: Auslesen aus Ini

  Alt 5. Mär 2009, 18:12
Hallo,

das kann auch nicht gehen:
Delphi-Quellcode:
procedure TForm1.btnSucheClick(Sender: TObject);
var
ini : TIniFile;
nachname, vorname : string;
begin

ini := TIniFile.Create('liste.ini');
try
  labelVorname.Caption := edtSucheVorname.Text;
  labelName.Caption := edtSucheNachname.Text;
  labelMSN.Caption := ini.ReadString(nachname+', '+vorname, 'MSN', '');

finally
  ini.free;

end;
end;
Denn die Variablen "nachname" und "vorname" sind nicht definiert.

Du müsstest es wie folgt schreiben:
Delphi-Quellcode:
begin

//Variablen definieren
nachname := 'Mustermann';
vorname := 'Max';

ini := TIniFile.Create('liste.ini');
try
[Edit]
oder wenn du deine Edits verwenden willst:

Delphi-Quellcode:
procedure TForm1.btnSucheClick(Sender: TObject);
var
ini : TIniFile;
nachname, vorname : string;
begin

ini := TIniFile.Create('liste.ini');
try
  vorname := edtSucheVorname.Text;
  nachname := edtSucheNachname.Text;

  labelVorname.Caption := vorname;
  labelName.Caption := nachname;

  labelMSN.Caption := ini.ReadString(nachname+', '+vorname, 'MSN', '');
finally
  ini.free;

end;
end;
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Dr4ke

Registriert seit: 12. Mai 2007
39 Beiträge
 
#13

Re: Auslesen aus Ini

  Alt 5. Mär 2009, 18:18
Natürlich ein peinlicher Fehler, dass ich die Zuweisung vergessen haben, allerdings noch immer keine bzw. die Falsche Ausgabe.

Delphi-Quellcode:
procedure TForm1.btnSucheClick(Sender: TObject);
var
ini : TIniFile;
nachname, vorname : string;
begin
nachname := edtSucheNachname.Text;
vorname := edtSucheVorname.Text;
ini := TIniFile.Create('liste.ini');
try
  labelVorname.Caption := edtSucheVorname.Text;
  labelName.Caption := edtSucheNachname.Text;
  labelMSN.Caption := ini.ReadString(nachname+', '+vorname, 'MSN', 'geht nicht');

finally
  ini.free;

end;
end;
Und oh Wunder: Das label wird zu "geht nicht"
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.336 Beiträge
 
Delphi XE2 Professional
 
#14

Re: Auslesen aus Ini

  Alt 5. Mär 2009, 18:21
jetzt mach mal nen test und schreib direkt

labelMSN.Caption := ini.ReadString('Mustermann, Max', 'MSN', 'geht nicht');
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Dr4ke

Registriert seit: 12. Mai 2007
39 Beiträge
 
#15

Re: Auslesen aus Ini

  Alt 5. Mär 2009, 18:22
Exakt das gleiche Resultat ..
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#16

Re: Auslesen aus Ini

  Alt 5. Mär 2009, 18:24
Und wenn Du mal einen absoluten Pfad verwendest?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.336 Beiträge
 
Delphi XE2 Professional
 
#17

Re: Auslesen aus Ini

  Alt 5. Mär 2009, 18:25
Existiert die Ini-Datei?

Gib hier mal einen absoluten Pfad an:

ini := TIniFile.Create('liste.ini'); Also so z. b.:

ini := TIniFile.Create('c:\liste.ini'); beziehungsweise den Pfad, in dem die Datei wirklich liegt...
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Dr4ke

Registriert seit: 12. Mai 2007
39 Beiträge
 
#18

Re: Auslesen aus Ini

  Alt 5. Mär 2009, 18:27
Aber natürlich, der Pfad war einfach nur falsch!

Mit
ini := TIniFile.Create(ExtractFilePath(ParamStr(0))+'liste.ini'); funktioniert es einwandfrei, vielen Dank!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 19:34 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