如何正确获取 Android 上的小数分隔符
How to Correctly Fetch the Decimal Separator Character on Android
使用像这样的旧方法很容易获取字符:
var
FS:TFormatSettings;
begin
FS:=TFormatSettings.Create;
...
记录成员 FS.DecimalSeparator
将包含所需的 Char
。这种方法在我的 XE5 IDE 编译的 Win FMX 应用程序中运行良好。但是在寻找 FireMonkey 中的角色的正确方法时,我读到一些意见认为这种方式是有害的并且
deprecated。我还读到 Delphi 的更高版本不支持这一点(我自己无法检查)。但是什么才是正确可靠的方法呢?特别是如果代码预计能够迁移到 Android?
DecimalSeparator
全局变量以及所有其他与语言环境相关的全局变量已被弃用。它们现在已被删除。
访问此信息的新受支持方式是通过 TFormatSettings
。因此,与您的问题相反,该类型并未被弃用。恰恰相反,这是获取语言环境信息的推荐方式。
var
fs: TFormatSettings;
....
fs := TFormatSettings.Create;
// use fs.DecimalSeparator;
使用像这样的旧方法很容易获取字符:
var
FS:TFormatSettings;
begin
FS:=TFormatSettings.Create;
...
记录成员 FS.DecimalSeparator
将包含所需的 Char
。这种方法在我的 XE5 IDE 编译的 Win FMX 应用程序中运行良好。但是在寻找 FireMonkey 中的角色的正确方法时,我读到一些意见认为这种方式是有害的并且
deprecated。我还读到 Delphi 的更高版本不支持这一点(我自己无法检查)。但是什么才是正确可靠的方法呢?特别是如果代码预计能够迁移到 Android?
DecimalSeparator
全局变量以及所有其他与语言环境相关的全局变量已被弃用。它们现在已被删除。
访问此信息的新受支持方式是通过 TFormatSettings
。因此,与您的问题相反,该类型并未被弃用。恰恰相反,这是获取语言环境信息的推荐方式。
var
fs: TFormatSettings;
....
fs := TFormatSettings.Create;
// use fs.DecimalSeparator;