ini文件截取问题(100分)

  • 主题发起人 主题发起人 a2236523
  • 开始时间 开始时间
A

a2236523

Unregistered / Unconfirmed
GUEST, unregistred user!
我要在一个ini文件中读出send_format,读出后要判断send_format中是否有%name%,或%birthday%,如有就要将%name%换回数据库employee表中的NAME字段,%birthday%则替换为今天日期!请问要怎么做?
procedure Tlf_srdx.FormCreate(Sender: TObject);
var
myinifile: TInifile;
begin
myinifile := TInifile.Create(ExtractFilePath(paramstr(0)) + 'config.ini');
if myinifile = nil then
begin
showmessage('打开config.ini出错');
end else
begin
edit1.text := myinifile.readstring('birthday', 'send_format', '');
myinifile.Destroy;
end;
end;
 
如果INI不是很大
你可以把整个文件读入到内存中
然后使用Replace函数做替换操作
 
if myinifile.valueexists('send_format','name') then
begin
.........
end
else
begin
.........
end;
 
大概就这样子咯
var
str:String;
begin
str:=myinifile.readstring('birthday', 'send_format', '');
if str<>'' then
begin
str := StringReplace(str, '%name%', 'name', [rfReplaceAll]);
edit1.text := StringReplace(str, '%birthday%', DateToStr(now), [rfReplaceAll]);
end;
end;
 
接受答案了.
 
后退
顶部