Ich würde jetzt gern die .ini am Start des Skript in einem Rutsch einlesen und dann je nach Usereingabe gleich die erforderlichen Daten (key/value Paare der gewählten Sektion) als 2D Array vorliegen haben.
Nur wie geht das?
IniReadSectionNames + IniReadSection und du kriegst die gesamte Datei ausgelesen ohne zu wissen, welche Sections und Keys existieren.
Man könnte für jede Sektion ein eigenes 2D Array erstellen, aber dann hat man im Skript eine dynamische Anzahl an 2D Arrays
Rein damit in ein 3D-Array. Du verwendest den ersten Index für die Sektionsauswahl und die anderen beiden Indizes sind für die Keys gedacht.
Du kannst auch ein Dictionary zum Speichern der Daten verwenden, ob du dann pro Sektion ein Dictionary oder ein globales Dictionary verwendest ist dir überlassen.
Zum Speichern aus dem Dictionary kannst du über die Keys iterieren und dann in die Ini-Datei schreiben.