Как преобразовать значение любого типа в строку
Более подробно ищите в хелпе Delphi по словам "Variant" и "TVarData"...
function ToString(Value: Variant): String;
begin
case TVarData(Value).VType of
varSmallInt,
varInteger : Result := IntToStr(Value);
varSingle,
varDouble,
varCurrency : Result := FloatToStr(Value);
varDate : Result := FormatDateTime('dd/mm/yyyy', Value);
varBoolean : if Value then Result := 'T' else Result := 'F';
varString : Result := Value;
else Result := '';
end;
end;
|
Использование:
ShowMessage(ToString(10.87));
ShowMessage(ToString(10));
|
или
var
V1 : Double;
V2 : Integer;
V3 : TDateTime;
V4 : Boolean;
begin
...
ShowMessage(ToString(V1)); // Double â String
ShowMessage(ToString(V2)); // Integer â String
ShowMessage(ToString(V3)); // DateTime â String
ShowMessage(ToString(V4)); // Boolean â String
end;
|
Так же можно пользоваться другими вариантами, например:
varCurrency : Result := CurrToStrF(Value ,ffFixed,CurrencyDecimals);
|
и
varDate: Result := DateToStr(Value);
|
|