要利用.INI文件做程序有关数据的存储工作,就需要能读和写.INI文件,所以列了如下方法给你参考:
从.INI文件中获取字符串
var
strResult:pchar;
begin
GetPrivateProfileString(
'windows', // []中标题的名字
'NullPort', // =号前的名字
'NIL', // 如果没有找到字符串时,返回的默认值
strResult, //存放取得字符
100, //取得字符的允许最大长度
'c:\forwin95\win.ini' // 调用的文件名
);
edit1.text:=strResult; //显示取得字符串
从.INI文件中获取整数
edit1.text:=inttostr(GetPrivateProfileInt(
'intl', // []中标题的名字
'iCountry', // =号前的名字
0,// 如果没有找到整数时,返回的默认值'c:\forwin95\win.ini' // 调用的文件名
));
向.INI文件写入字符串
WritePrivateProfileString(
'windows', // []中标题的名字
'load', // 要写入“=”号前的字符串
'accca', //要写入的数据
'c:\forwin95\win.ini' // 调用的文件名
);
向.INI文件写入整数
WritePrivateProfileSection(
'windows', // []中标题的名字
'read=100', // 要写入的数据
'c:\forwin95\win.ini' // 调用的文件名
);

解决方案 »

  1.   

    IinFile结构:例如;Sample.ini[Test1]
    Item1 = 'UP'[Sample2]
    Net = 'Csdn'
    程序中访问
    // IniFile文件的操作
    procedure PIniWriteS(SectionName, VarName:string; AValue:string);
    var
        FIniFile : TIniFile;
    begin
        FIniFile := TIniFile.Create('Sample.ini');
        FIniFile.WriteString(SectionName, VarName, AValue);
        FIniFile.Free;
    end;procedure PIniWriteB(SectionName, VarName:string; AValue:Boolean);
    var
        FIniFile : TIniFile;
        szValue : string;
    begin
        FIniFile := TIniFile.Create('Sample.ini');
        if AValue then
            szValue := 'True'
        else
            szValue := 'False';
        FIniFile.WriteString(SectionName, VarName, szValue);
        FIniFile.Free;
    end;
    function PIniReadS(SectionName, VarName:string; ADefault:string) : string;
    var
        FIniFile : TIniFile;
    begin
        FIniFile := TIniFile.Create('Sample.ini');
        Result := FIniFile.ReadString(SectionName, VarName, ADefault);
        FIniFile.Free;
    end;function PIniReadB(SectionName, VarName:string; var AValue:Boolean) : Boolean;
    var
        FIniFile : TIniFile;
        szValue  : string;
    begin
        Result   := AValue;
        FIniFile := TIniFile.Create('Sample.ini');
        if AValue then szValue := 'True' else szValue := 'False';
        szValue := FIniFile.ReadString(SectionName, VarName, szValue);
        AValue   := (uppercase(szValue)='TRUE');
        Result   := AValue;
        FIniFile.Free;
    end;当然如果把文件名也作为参数传递上述函数更加通用