如何正确获取 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;