Как проверить индекс списка строк?

Я хочу показать 2 разных результата в delphi с моим списком строк.

Если индекс меньше 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];

И это работает без ошибок. Это реальное решение?

1 ответ

Решение

Вместо eintrage.indexof<1 тебе нужно eintrage.count=1,

Вы также должны проверить, что eintrage.count либо 1, либо 2, если ваш список пуст ini.ReadSections,

Другие вопросы по тегам