Показать сообщение отдельно
  #3  
Старый 03.03.2016, 05:53
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,088
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Ну, в принципе, код почти нормальный, хотя можно попробовать и оптимизировать.
Код:
var
  s : String;
begin
  // Сл. 2 строки убирают обращение к листу,
  // Даже с учетом копирования данных будет быстрее.
  S := XMLList['FileName'];
  S := Copy(S,Pos('TE_00024_',S) + 10,8);

  // Теперь собираем дату и вычитаем 1 день.
  Result := EncodeDate(StrToInt(Copy(S,1,4)),StrToInt(Copy(S,5,2)),StrToInt(Copy(S,7,2))) - 1;
end;
Ответить с цитированием