如何在delphi 10中将单个空格转换为float

SSE*_*SSE -1 delphi delphi-2010

我正在尝试将字符串转换为浮点数,当我传递单个字符时它会给出异常.

FMandateSize := StrToFloat(EditMandateSize.Text);
Run Code Online (Sandbox Code Playgroud)

任何想法如何将单个char转换为float?

Bru*_*Gee 14

您对空间角色的期望值是多少?可能是0.0.

您可以使用StrToFloatDef为无效字符串分配自己的默认值:

FMandateSize := StrToFloatDef(EditMandateSize.Text, 0.0);
Run Code Online (Sandbox Code Playgroud)

或者您可以使用TryStrToFloat,它会为您提供布尔结果,而不是在存在无效字符串时抛出异常.

Result := TryStrToFloat(EditMandateSize.Text, FMandateSize);
Run Code Online (Sandbox Code Playgroud)