Functions > FileDirDisk >


IniReadSection

Lit toutes les paires clé/valeur d'une section d'un fichier .ini au format standard.

IniReadSection ( "filename", "section" )

Paramètres

filename Le nom du fichier ini.
section Le nom de la section dans le fichier ini.

Valeur de retour

Succès: Retourne un tableau à 2 dimensions où l'élément [n][0] est la clé et l'élément [n][1] est la valeur.
Échec: Définit @error <> 0 si incapable de lire la section (Le fichier INI peut ne pas exister ou la section peut ne pas exister ou être vide)

Remarques

Un fichier ini standard ressemble à:
[ SectionName]
Key = valeur


Le nombre d'éléments retournés sera dans $aArray[0][0]. Si une error se produit, aucun tableau n'est créé.
    [0][0] = Nombre de paires
    [1][0] = 1-ère clé
    [1][1] = 1-ère valeur
    [2][0] = 2-ième clé
    [2][1] = 2-ième caleur
    ...
    [n][0] = n-ième clé
    [n][1] = n-ième valeur

Seuls les 32767 premiers caractères sont lus pour des raisons d'héritage.

En relation

IniDelete, IniRead, IniReadSectionNames, IniRenameSection, IniWrite, IniWriteSection

Exemple

#include <MsgBoxConstants.au3>
#include <WinAPIFiles.au3>

Example()

Func Example()
    ; Crée une constante locale avec le nom complet du fichier qui sera lu/écrit
    Local Const $sFilePath = _WinAPI_GetTempFileName(@TempDir)

    ; Crée une structure de section INI sous forme de chaîne.
    Local $sSection = "Title=AutoIt" & @CRLF & "Version=" & @AutoItVersion & @CRLF & "OS=" & @OSVersion

    ; Ecrit la chaîne à la section "General".
    IniWriteSection($sFilePath, "General", $sSection)

    ; Lit la section "Général". Ce qui retourne un tableau à 2 dimensions.
    Local $aArray = IniReadSection($sFilePath, "General")

    ; Vérifie si une erreur s'est produite.
    If Not @error Then
        ; Énumère le tableau affichant les clés et leurs valeurs respectives.
        For $i = 1 To $aArray[0][0]
            MsgBox($MB_SYSTEMMODAL, "", "Clé: " & $aArray[$i][0] & @CRLF & "Valeur: " & $aArray[$i][1])
        Next
    EndIf

    ; Supprime le fichier INI.
    FileDelete($sFilePath)
EndFunc   ;==>Example