Functions > FileDirDisk >


IniWriteSection

Écrit une section dans un fichier ini au format standard.

IniWriteSection ( "filename", "section", "data" [, index = 1] )

Paramètres

filename Le nom du fichier ini.
section Le nom de la section à insérer dans le fichier ini.
data Les données à écrire. Les données peuvent être une chaîne ou un tableau. Si la donnée est une chaîne, chaque paire clé/valeur doit être délimitée par @LF. Si la donnée est un tableau, le tableau doit être de dimension 2 et la deuxième dimension doit être 2.
index [optionnel] Si un tableau est transmis en donnée, ce paramètre indique l'index à partir duquel l'écriture doit commencer. Par défaut, c'est 1 de telle façon que la valeur de retour de IniReadSection() puisse être utilisée immédiatement. Pour les tableaux créés à la main, cette valeur peut être différente en fonction de la façon dont le tableau a été créé. Ce paramètre est ignoré si une chaîne est passée comme donnée.

Valeur de retour

Succès: Retourne 1.
Échec: Retourne 0 et @error = 1 si le format des données n'est pas valide.

Remarques

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


Si le fichier n'existe pas, il est créé. Tous les répertoires qui n'existent pas, ne seront pas créés. Les clés et/ou les sections sont ajoutés à la fin et ne sont pas triés d'aucune façon.
Si la section à écrire existe déjà, son contenu sera écrasé.

Si vous souhaitez utiliser un fichier ini avec le codage Unicode, créez d'abord un fichier ini en utilisant la fonction FileOpen() avec le paramètre de mode réglé sur "Unicode UTF16 Little Endian".

En relation

IniDelete, IniRead, IniReadSection, IniReadSectionNames, IniRenameSection, IniWrite

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 dans un tableau. L'élément zéro contient le nombre d'éléments du tableau, dans ce cas 3.
    Local $aSection[4][2] = [[3, ""],["Title", "AutoIt"],["Version", @AutoItVersion],["OS", @OSVersion]]

    ; Ecrit le tableau dans la section 'General'.
    IniWriteSection($sFilePath, "General", $aSection)

    ; Lit la section INI 'General'. 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 pour afficher 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