我想用我的stringlist在delphi中显示2个不同的结果。
如果索引小于1,则应显示其他结果。
我总是得到List index exceeds the maximum error
继承我的守则。
function TForm1.readTable: String;
var
ini: TIniFile;
einträge: TStringList;
begin
try
einträge := TStringList.Create;
inipfad := ExtractFilePath(ParamStr(0)) + '/initest/' + 'config.INI';
ini := TIniFile.Create(inipfad);
ini.ReadSections(einträge);
ShowMessage('geht');
if einträge.IndexOf < 1 then
Result := einträge[0]
else
Result := einträge[1];
finally
ini.Free;
Einträge.Free;
end;
end;
立即更改为
if einträge.Count <= 0 then begin
Result := einträge[0]
end
else
Result := einträge[1];
它的工作没有错误。这是一个真正的解决方案吗?
答案 0 :(得分:1)
而不是eintrage.indexof<1
,您需要eintrage.count=1
。
如果eintrage.count
后列表为空,您还应检查ini.ReadSections
是1还是2。