Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   ini Datei wird nich ausgelesen (https://www.delphipraxis.net/70529-ini-datei-wird-nich-ausgelesen.html)

Ironhead 31. Mai 2006 14:35


ini Datei wird nich ausgelesen
 
Es kann sein das diese Frage schön des öffteren gestellt wurde, hab auch schon einiges darüber gelesen.
Doch alles bringt mich nicht wirklich weiter, also versuch ich es nochmal.

Hab ein Programm wo ich den Inhalt dreier Listboxen in eine INI Datei Speichern tueh, das klappt auch, nur mit dem auslesen der gespeicherten Datein hab ich Probleme

Delphi-Quellcode:
procedure TForm4.Button4Click(Sender: TObject);
var
  ini: TIniFile;
begin
try

  ini := TIniFile.Create(IncludeTrailingPathDelimiter(GetCurrentDir)+'einstellungen.ini');

  ini.WriteString('Fach','Name',(Listbox1.Items.Text));
  ini.WriteString('Heftcode','Name',(Listbox2.Items.Text));
  ini.WriteString('Note','Zahl',(Listbox3.Items.Text));
finally
  ini.Free;

     end;
     end;
dies ist der Code zum Speichern.

und hier mein Code zum Lesen:

Delphi-Quellcode:
 procedure TForm4.FormCreate(Sender: TObject);
 var ini: TIniFile;
begin
try

  ini := TIniFile.Create(IncludeTrailingPathDelimiter(GetCurrentDir)+'einstellungen.ini');

 
  ini.ReadString('Fach','Name',(Listbox1.Items.Text));
  ini.ReadString('Heftcode','Name',(Listbox2.Items.Text));
  ini.ReadString('Note','Zahl',(Listbox3.Items.Text));
finally
  ini.Free;

     end;
     end;
Nun er liest es nicht aus, hab es schon mit dem Code probiert:

Delphi-Quellcode:
ini.ReadSectionValues('Name',(Listbox1.Items));
Da schreibt er mir in die Listbox eben Name rein, nun wie kann ich es hinbekommen das er mir die Dateien richtig ausliest?

Danke schonmal für Eure Anworten

Gollum 31. Mai 2006 14:41

Re: ini Datei wird nich ausgelesen
 
Hallo,

versuche es einmal so:
Delphi-Quellcode:
...
Listbox1.Items.Text:=ini.ReadString('Fach','Name', '');
...

Ironhead 31. Mai 2006 14:48

Re: ini Datei wird nich ausgelesen
 
Hat Prima geklappt Danke, achso hab noch eine Frage die ich vergessen hab, wie kann ich es erreichen das die vorhandenden einträge durch ein neues Speichern nicht gelöscht und ersetzt werden?

_frank_ 31. Mai 2006 14:51

Re: ini Datei wird nich ausgelesen
 
die vorhandenden einträge werden nicht gelöscht (bei TInifile), es sei denn, du machst EreaseSection (löscht alle Einträge einer section) oder gibst diesem Eintrag einen neuen Wert (dann ist der alte Wert natürlich weg)

HTH Frank

Ironhead 31. Mai 2006 15:17

Re: ini Datei wird nich ausgelesen
 
Ja habs auch gesehen, er trägt die neuen Dateien schon in die ini datei ein, doch kann er beim auslesen immer nur den ersten eintrag anzeigen.

Die INI Datei:

[Fach]
Name=Erdkunde
Latein
Musik

[Heftcode]
Name=fdbdfbdf
fsgsdfgv
dfgvbdf

[Note]
Zahl=2,2
2,2
2,2


wie kann ich es also schaffen, das er alle einträge die eingetragen werden, auch wieder nacheinander in der Listbox eingetragen werden?

ManuMF 31. Mai 2006 16:41

Re: ini Datei wird nich ausgelesen
 
Hallo,

ich würde das anders speichern. Beispiel:
Code:
[Fach1]
Name=Erdkunde
Heftcode=sdhkfg
Zahl=2,2

[Fach2]
Name=Musik
...
Dann kannst du mit ReadSections bzw. ReadSectionValues alle Werte lesen und mit Write... natürlich schreiben.

Aber mal ein genereller Tipp: Die Delphi-Referenz durchsuchenDelphi-Hilfe erklärt dir meistens sehr genau, wie man mit bestimmten Objekten / Funktionen etc. umgeht. Klicke einfach mit der Maus auf ein Wort im Quelltext und drücke [F1].

Gruß,
ManuMF

P.S.: Vielleicht hilft dir, wenn du es wie oben machen willst, dieses Thema.

Ironhead 31. Mai 2006 17:37

Re: ini Datei wird nich ausgelesen
 
Ja Danke für deine Antwort, nur hilft mir das nich wirklich weiter, weil ich keine besonders große Ahnung davon hab, versuch mich jetz erst dareinzuarbeiten.

Wenn du mir vielleicht einen Anhaltspunkt oder einen Code geben könntest wie ich dein Beispiel umsetzen kann, wäre ich dir Dankbar.

Ansonsten trotzdem vielen Dank, ich werds auf jedenfall sehen ob ichs eventuell hinbekomme.

ManuMF 1. Jun 2006 16:07

Re: ini Datei wird nich ausgelesen
 
Hallo,

hast du dir das Thema (von meinem Link) angesehen? Dort gibt es Code-Beispiele. Auch die Delphi-Hilfe hat (für die meisten Funktionen) einen Link "Beispiel".

Gruß,
ManuMF

Luckie 1. Jun 2006 16:14

Re: ini Datei wird nich ausgelesen
 
Wie viele Ini-Dateien verteilst du denn o am tag über das ganze System?
Delphi-Quellcode:
ini := TIniFile.Create(IncludeTrailingPathDelimiter(GetCurrentDir)+'einstellungen.ini');
;)
GetCurrentDirectory liefert dir das aktuelle Arbeitsverzeichnis, was aber nicht zwingend das Verzeichnis deiner Anwendung ist. Entweder mit ParamStr arbeiten oder noch besser es so machen.

ManuMF 1. Jun 2006 16:16

Re: ini Datei wird nich ausgelesen
 
Hallo,

@Luckie: Die Ini wird inzwischen ja nicht mehr gar nicht ausgelesen, sondern beim Schreiben wird ein Zeilenumbruch reingesetzt, der natürlich dann nicht geladen wird.

Gruß,
ManuMF


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:29 Uhr.
Seite 1 von 2  1 2      

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