C#-强制字符串.格式化为使用小数和NEVER逗号

本文关键字:小数 NEVER 逗号 字符串 格式化 C#- | 更新日期: 2023-09-27 17:59:53

基本上我意识到我的应用程序使用逗号而不是小数,我从不想允许这样做。有人知道我该怎么纠正吗?我在谷歌上找不到一件事是强制小数,那就是强制逗号。

         return String.Format("{0}f, {1}f, {2}f, {3}f, {4}f, {5}f, {6}f, {7}f, {8}f, {9}f, {10}f, {11}f, {12}f, {13}f, {14}f, {15}f", M.M11, M.M12, M.M13, M.M14, M.M21, M.M22, M.M23, M.M24, M.M31, M.M32, M.M33, M.M34, M.OffsetX, M.OffsetY, M.OffsetZ, M.M44);

C#-强制字符串.格式化为使用小数和NEVER逗号

您可以使用其他重载:

return String.Format(
    CultureInfo.InvariantCulture // <<== That's the magic
,   "{0}f, {1}f, {2}f, {3}f, {4}f, {5}f, {6}f, {7}f, {8}f, {9}f, {10}f, {11}f, {12}f, {13}f, {14}f, {15}f"
,   M.M11, M.M12, M.M13, M.M14, M.M21, M.M22, M.M23, M.M24, M.M31, M.M32, M.M33, M.M34, M.OffsetX, M.OffsetY, M.OffsetZ, M.M44
);

这种调用方式确保了不变区域性作为格式提供程序传递给String.Format,确保您获得数字的句点、货币符号的美元、月份和日期名称的英文等

尝试将字符串的区域性设置为美国英语。格式功能:

String.Format(new CultureInfo("en-US"), "{0}f, {1}f, {2}f", etc)