To: AV_15(C.C.Q.) , zhujunfeng(ericss) 用你们所说的读出来的都是空值,而文件里不是空的 不知什么原因 To:breezing(网上的小鱼): 这样更不行读出来的是key值,即:user(10000),user(10001)... 用IniFile.ReadSectionValues('users',ComboBox1.Items)读出来的 是:user(10000)=10000,user(10001)=10001...
myinifile.readsectionvalues('users',aStrings); for i:=0 to aStrings.Count-1 do begin s:=aStrings.Strings[i]; j:=pos('=',s); aStrings.Strings[i]:=copy(s,j+1,length(s)-j); end;
而我只要读出等号后面的10000这个value值
s:Array [1..25] of char;......GetPrivateProfileString('users','user(10000)','',@s,25,'C:\A.ini');
//假设有: C:\A.ini
//其他循环的问题你应该可以自己搞定吧
var
s:PChar;
ss:String;.......GetMem(s,25);
GetPrivateProfileString('users','user(10000)','',s,25,'C:\A.ini');
ss:=StrPas(s);
然后
for i:=1 to usercount do
begin
user[i]:=myinifile.readstring('users','user('+i+')','')
end
应该是inttostr(i),如果固定格式是100,那么再做一次format
你用myinifile.Readinteger('小节名','关键字',缺省值)
用你们所说的读出来的都是空值,而文件里不是空的
不知什么原因
To:breezing(网上的小鱼):
这样更不行读出来的是key值,即:user(10000),user(10001)...
用IniFile.ReadSectionValues('users',ComboBox1.Items)读出来的
是:user(10000)=10000,user(10001)=10001...
for i:=0 to aStrings.Count-1 do
begin
s:=aStrings.Strings[i];
j:=pos('=',s);
aStrings.Strings[i]:=copy(s,j+1,length(s)-j);
end;