INI-Dateien sind reine Textdateien. Ursprünglich haben Windows-Programme sie benutzt, um INItialisierungswerte und Einstellungen zu speichern. Dann hat aber Microsoft die Entwickler dazu aufgefordert, solche Einstellungen stattdessen in der Registry zu speichern. Aber auch heute gibt es noch gute Gründe, INI-Dateien zu benutzen. Sie sind einfach editierbar und portabel (d.h. sie können zusammen mit dem Programm auf andere Rechner kopiert werden und die Einstellungen sind dort also auch sofort verfügbar).
Probier den Code doch einfach mal aus. Die erstellte Datei sollte damit so aussehen:
"Variablen" ist der Name des Abschnitts. Es kann mehrere Abschnitte in einer Datei geben, sie brauchen eindeutige Namen. "GesH" ist der Name des Schlüssels und "123" sein Wert.
Viele Wege führen nach Rom. Aber nicht alle sind gleich gut bei einer gegebenen Problemstellung.
Du solltest dir TStream und seine Nachfahren (TFileStream, TMemoryStream, TStringStream) wirklich anschauen, aber für deine Zwecke hier (eine Zahl in eine Datei speichern und wieder auslesen) könnte TIniFile (oder TMemIniFile) die komfortabelste Lösung sein. Denn damit wird das Konvertieren deines Integers in einen String und zurück automatisch übernommen. Und wenn die Datei nicht existiert oder der Wert kein Integer ist, dann wird keine
Exception ausgelöst, sondern einfach der Standardwert benutzt (der letzte Parameter von TIniFile.ReadInteger).
Mit einem Stream musst du dich selbst um solche Dinge kümmern. Du könntest natürlich auch den Binärwert des Integers in eine Datei schreiben (TFileStream.WriteBuffer), aber das wäre dann keine Textdatei mehr.