IniWriteSection

首页  后退  前进

IniWriteSection
down2

IniWriteSection

写配置文件(*.ini)的字段数据.

 

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

参数

filename

目标 .ini 文件名.

section

.ini 文件中的字段名.

data

要写入的数据. 这些数据可以是字符串或数组.

如果数据是字符串, 则每对 关键字=值 必须由 @LF 分隔.

如果数据是数组, 则必须为二维数组,且第二维必须含有两个元素.

index

[可选] 如果数据是数组, 此参数指定开始写入的数组索引.

默认为 1, 以便 IniReadSection() 的返回值可以立即使用.

对于手动创建的数组, 参数值可能需要依赖数组是如何建立的而有所不同.

如果数据是字串, 则忽略这个参数.

返回值

成功:

返回 1.

失败:

返回 0. 如果数据格式无效, 则 @error 设置为 1.

备注

标准 INI 文件结构如下:

[字段名]

关键字=

 

如果文件不存在, 则创建. 任何目录不存在, 将不会被创建.

关键字和(或)字段将被添加到最后, 并且不按任何规则排序.

如果字段已存在, 数据将覆盖.

 

如果你想使用 unicode 编码的 ini 文件, 首先创建一个 .ini 文件, 使用 FileOpen() 函数与模式参数设置为 "Unicode UTF16 小编码".

 

函数示例

#include <MsgBoxConstants.au3>
#include <WinAPIFiles.au3>
Example()
Func Example()
    ; Create a constant variable in Local scope of the filepath that will be read/written to.
    Local Const $sFilePath = _WinAPI_GetTempFileName(@TempDir)
    ; Create an INI section structure as an array. The zeroth element is how many items are in the array, in this case 3.
    Local $aSection[4][2] = [[3, ""], ["Title", "AutoIt"], ["Version", @AutoItVersion], ["OS", @OSVersion]]
    ; Write the array to the section labelled 'General'.
    IniWriteSection($sFilePath, "General", $aSection)
    ; Read the INI section labelled 'General'. This will return a 2 dimensional array.
    Local $aArray = IniReadSection($sFilePath, "General")
    ; Check if an error occurred.
    If Not @error Then
        ; Enumerate through the array displaying the keys and their respective values.
        For $i = 1 To $aArray[0][0]
            MsgBox($MB_SYSTEMMODAL, "", "Key: " & $aArray[$i][0] & @CRLF & "Value: " & $aArray[$i][1])
        Next
    EndIf
    ; Delete the INI file.
    FileDelete($sFilePath)
EndFunc   ;==>Example

----------------------------------------

 

该函数可以通过命令 exect 调用

参见:

IniDelete, IniRead, IniReadSection, IniReadSectionNames, IniWrite, IniRenameSection

例子
copy

exect=IniWriteSection(EnvGet('COMMANDER_INI'),'WWW','k1=Hello'&@LF&'k2=пока') ;; 将Wincmd.ini写入指定键和值的[WWW]部分

up2

tcimage © Аверин Андрей для Total Commander Image Averin-And@yandex.ru