Liest alle Schlüssel-/Wert-Paare aus einer Sektion einer standardkonformen .ini-Datei.
IniReadSection ( "filename", "section" )
filename | Der Dateiname der .ini-Datei. |
section | Der Name der Sektion in der .ini-Datei. |
Erfolg: | ein 2D Array, in dem element[n][0] der Schlüssel und element[n][1] der Wert ist. |
Fehler: | Setzt das @error Flag auf ungleich null, wenn die Sektion nicht gelesen werden kann (Die .ini-Datei oder die Sektion könnte nicht existieren oder ist leer) |
Eine standardkonforme .ini-Datei sieht folgendermaßen aus:
[SektionsName]
Schlüssel=Wert
Die Anzahl der zurückgegebenen Elemente steht in $aArray[0][0]. Wenn ein @error auftaucht, wird kein Array erstellt.
$aArray[0][0] = Anzahl
$aArray[1][0] = 1. Schlüssel
$aArray[1][1] = 1. Wert
$aArray[2][0] = 2. Schlüssel
$aArray[2][1] = 2. Wert
...
$aArray[n][0] = n. Schlüssel
$aArray[n][1] = n. Wert
Nur die ersten 32767 Zeichen werden aufgrund der Kompatibilität in einer Sektion gelesen.
IniDelete, IniRead, IniReadSectionNames, IniRenameSection, IniWrite, IniWriteSection
#include <MsgBoxConstants.au3>
#include <WinAPIFiles.au3>
Example()
Func Example()
; Erstellt eine Konstante im lokalen Bereich des Dateipfades, welcher zum lesen bzw. schreiben verwendet wird.
Local Const $sFilePath = _WinAPI_GetTempFileName(@TempDir)
; Erstellt eine Sektion in der ini mit der Struktur eines Strings.
Local $sSection = "Title=AutoIt" & @LF & "Version=" & @AutoItVersion & @LF & "OS=" & @OSVersion
; Schreibt den String in die Sektion 'General'.
IniWriteSection($sFilePath, "General", $sSection)
; Liest die Sektion 'General'. Es wird ein 2D Array zurückgegeben.
Local $aArray = IniReadSection($sFilePath, "General")
; Prüft, ob ein Fehler aufgetreten ist.
If Not @error Then
; Durchläuft das Array und stellt die einzelnen Schlüssel und deren Werte dar.
For $i = 1 To $aArray[0][0]
MsgBox($MB_SYSTEMMODAL, "", "Schlüssel: " & $aArray[$i][0] & @CRLF & "Wert: " & $aArray[$i][1])
Next
EndIf
; Löscht die ini-Datei.
FileDelete($sFilePath)
EndFunc ;==>Example