操作ini文件

{
   可用于下拉框的值,因为不经常变,就算变可改变INI文件一次。




   一、ini文件结构
        ; 注释,独占一行,否则认为是关键字的值
        [小节名]
        关键字=值

   二、定义
        uses IniFiles


    [UserInfo]
        userName=moon
        userPas=123456
        isHun=1
    [UserPro]
        userAge=26
}

    //定义
    filePath:String;
    myIniFile:TIniFile;

    //创建
    filePath:=ExtractFilePath(Application.ExeName)+'moon.ini';
    myIniFile:=TIniFile.Create(filePath);

    {
        读值
        myIniFile.ReadXXX('小节名','关键字',默认值);
        布尔值  1  0
        *默认值:当读取失败时返回的值,如关键字不存在,filePath错误,值类型不匹配。


    }
    str:=myIniFile.ReadString('UserInfo','userName','');  //值为moon
    num:=myIniFile.ReadInteger('UserPro','userAge',0);    //值为26
    sign:=myIniFile.ReadBool('UserInfo','isHun',false);   //值为真 Ture

    {
        写值
        如果小节名或关键字没有,则会创建。
        myIniFile.WriteXXXX('小节名','关键字',值);
    }
    myIniFile.WriteInteger('UserPro','userAge',25);

    //删除关键字
    myIniFile.DeleteKey(小节名,关键字);

    //创建小节  '用写入'关键字的方法

    //删除小节  其下关键字一块删除
    myIniFile.EraseSection(小节名);

    //读取某小节所有关键字  ReadSection('小节名',TStrings变量);
    var
        strs:TStrings;
        i:Integer;
    begin
        strs:=TStringList.Create;
        myIniFile.ReadSection('UserInfo',strs);
        for i:=0 to strs.Count-1 do
        begin
            Memo1.lines.add(strs[i]);
        end;

    end;

    //读取所有小节名    ReadSections(TStrings变量);同上


    //读取指定小节下的所有行,包括关键字,=号,值。
    ReadSectionValues('小节名',TStrings变量);

    //完需要释放
    FreeAndNil(myIniFile);

 

posted on 2012-05-29 16:09  天 火  阅读(302)  评论(0编辑  收藏  举报