Space 在 Azure devops 中从 Ubuntu 16.04 更新到 18.04 时插入在 % 前面

Space inserted in front of % when updating from Ubuntu 16.04 to 18.04 in Azure devops

当我将构建主机从 Ubuntu 16.04 升级到 18.04
(内插的)字符串格式已更改。 之前是什么 "{x:P0}" => "42%"
现在是 "42 %".

怎么会这样?

OS 只是一个... OS。管道没有变化,依然使用3.1.x。 我很肯定没有其他改变,因为我正在使用 MSDevops 并再次提交和恢复并且仔细检查没有进行其他更改。

P0 格式字符串受文化设置影响,所以是的,OS 更改会产生影响。

例如,这段代码:

var x = 0.42;

Console.WriteLine(x.ToString("P0", CultureInfo.CreateSpecificCulture("fr-FR")));
Console.WriteLine(x.ToString("P0", CultureInfo.CreateSpecificCulture("en-GB")));

将输出:

42 %
42%