Entwickler-Ecke

Dateizugriff - INI Datei auslesen


Spurius - Sa 12.07.03 12:56
Titel: INI Datei auslesen
Hallo,

ich hab eine ini-datei:

Quelltext
1:
2:
3:
[profil]
vorname = max
nachname = mustermann

Wenn ich jetzt mit

Delphi-Quelltext
1:
vorname1 := ini.readstring(profil,'vorname',???);                    

den letzten Wert laden will, funtioniert das nicht. Wie muss ich das schreiben, damit der letzte Wert, der ausgelesen wird?

MfG
Spurius

Moderiert von user profile iconKlabautermann: Code-Tags hizugefügt
Moderiert von user profile iconTino: Delphi-Tags hinzugefügt.


superchatti - Sa 12.07.03 13:04

Das letze ist der String, der eingesetzt wird falls er die andere nicht finden kann!
Also so:


Delphi-Quelltext
1:
vorname1 := ini.readstring(profil,'vorname','');                    


Ich hoffe ich konnte helfen!

Moderiert von user profile iconKlabautermann: Delphi-Tags hizugefügt.


Terra23 - Sa 12.07.03 13:15

Trotzdem habt ihr beide einen Fehler. Es muß heißen:


Delphi-Quelltext
1:
Vorname1:=Ini.ReadString('Profil''Vorname''');                    


"Profil" muß man in Tüttelchen setzen, weil es ein String ist. :-)


superchatti - Sa 12.07.03 14:36

:oops:
oooops!
Stimmt!

*löl*
Hab ich übersehen :shock:


Spurius - Sa 12.07.03 15:51

Hallo,
also mit den '' funktionierts bei mir nicht. Hier ist der Code:



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:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,inifiles,
  StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Label1: TLabel;
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  ini:tinifile;
  test:string;
implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
begin
  ini := tinifile.create('c:/testtest');
  test := ini.readstring('profil','vorname','');
  label1.caption := test;
end;

end.

´
Vielleicht weiß da jemand die Lösung. :idea:
MfG
Spurius

Moderiert von user profile iconKlabautermann: Delphi-Tags hinzugefügt


Spurius - Sa 12.07.03 15:59

Hallo,
ich hab den Fehler gefunden. :D
Ich hatte vergessen
ini := tinifile.create('c:/testtest.INI')
zu schreiben. Also die ini-Endung!!
MfG
Spurius


superchatti - Sa 12.07.03 16:23

-löl-


Klabautermann - Sa 12.07.03 19:25

Hi Leute!

Bitte verwendet in Zukunft die Formatierungsmöglichkeiten, die dieses Boad bietet. Dadurch werden die Beiträge nämlich viel übersichtlicher ;).

Ein einfaches

Quelltext
1:
[delphi]Quelltext[/delphi]                    

hilft schon sehr.

Gruß
Klabautermann


Simon Joker - Mo 14.07.03 09:47

Am Ende bitte noch  ini.Free; einfügen um den Speicher wieder freizugeben!


foxy - Mo 14.07.03 10:02

also ich würde das so machen


Delphi-Quelltext
1:
2:
3:
4:
5:
ini:= TINIFile.create;
try
  b:=ini.readstring(xxxxxxxx);
finally
ini.free;