![]() |
Auslesen aus Ini
Guten Tag!
Ich bin dabei eine persönliche Adressbuch-Software zu erstellen, habe jedoch Probleme beim Auslesen. Ich speichere die Eingaben wie Name, Nummer etc. in einer Ini-Datei, was soweit auch gut funktioniert. Doch wenn ich sie wieder auslesen möchte, bekomme ich erstmal einen Fehler der mir sagt ich benutze den falschen Typ, was schonmal nicht stimmt und wenn ich den Typ dann umwandle bekomme ich nur eine "0" als Ausgabe.
Delphi-Quellcode:
Die Ini-Datei sieht folgendermaßen aus:
procedure TForm1.btnSucheClick(Sender: TObject);
var ini : TIniFile; name, vorname : string; begin ini := TIniFile.Create('liste.ini'); try labelVorname.Caption := edtSucheVorname.Text; labelName.Caption := edtSucheNachname.Text; labelMSN.Caption := IntToStr(ini.ReadInteger(name+', '+vorname, 'MSN', 0)); finally ini.free; end; end;
Delphi-Quellcode:
Das Label allerdings verwandelt sich nur in eine 0 .. Woran könnte das liegen
[Mustermann, Max]
Geburtstag=12.07.1980 Telefon=081555 Handy=081508150815 E-Mail=Mustermann@gmx.de ICQ=0815 MSN=Mustermann@gmx.de |
Re: Auslesen aus Ini
Hallo,
also der erste Fehler der mir auffällt ist die Variable "Name". Dieser Name ist schon von Delphi reserviert, Du kannst ihn also nich als Variable benutzen. Zitat:
mfg Whatever |
Re: Auslesen aus Ini
Das mit dem 'Name' wusste ich nicht, danke, kann allerdings hier nicht die Fehlerquelle sein.
Und
Delphi-Quellcode:
in dieser Zeile ist schon alles ok, wenn du dir ma bitte die Section der Ini anschaust.
ini.ReadInteger(name+', '+vorname, 'MSN', 0)
|
Re: Auslesen aus Ini
Hallo,
dein MSN-Eintrag in der INI-Datei ist ein String - du versuchst aber einen Integer aus der INI-Datei zu lesen So müsst es heissen:
Delphi-Quellcode:
labelMSN.Caption := ini.ReadString(name+', '+vorname, 'MSN', ''));
|
Re: Auslesen aus Ini
Oh tut mir leid hab ich übersehn :oops:
Aber lieg ich richtig das Du mit der besagten Zeile das hier auslesen willst? Zitat:
Delphi-Quellcode:
ReadString da Mustermann@gmx.de ein String und kein Integer ist. Damit hätte sich der Fehler mit dem falschen Typ geklärt.
labelMSN.Caption := IntToStr(ini.[u]ReadString[/u](name+', '+vorname, 'MSN', 0));
mfg Whatever |
Re: Auslesen aus Ini
Wie schon im ersten Post erwähnt, erzeugt das seltsamerweise einen Fehler.
Mit der Zeile
Delphi-Quellcode:
erhalte ich
labelMSN.Caption := ini.ReadString(nachname+', '+vorname, 'MSN', 0);
Zitat:
Edith sagt: jegliche variablen 'name' bereits in 'nachname' geändert. ;) |
Re: Auslesen aus Ini
Delphi-Quellcode:
so sollte es klappen.... denk ich
labelMSN.Caption := ini.ReadString(nachname+', '+vorname, 'MSN', '');
|
Re: Auslesen aus Ini
So erfolgt leider überhaupt keine Ausgabe mehr. :(
|
Re: Auslesen aus Ini
Zitat:
Dann prüf doch mal ob die Section, die zu mittels nachname + vorname zusammenbaust auch wirklich gibt, denn der Code von Whatever funktioniert für dein Ini-Beispiel [Edit] Habs grad mal in meinem Projekt ausprobiert: Auslesen aus der Ini-Datei:
Delphi-Quellcode:
Ini-Datei:
Label1.Caption := ReadString('Mustermann, Max', 'MSN', 'geht nicht');
[Mustermann, Max] MSN=test Und "test" wird im Label angezeigt |
Re: Auslesen aus Ini
Mach doch zum Testen mal
Delphi-Quellcode:
Das muss funktionieren :gruebel:
labelMSN.Caption := ini.ReadString('Mustermann, Max', 'MSN', '');
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:41 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz