gpt4 book ai didi

c# - 货币格式

转载 作者:太空宇宙 更新时间:2023-11-03 18:18:43 25 4
gpt4 key购买 nike

我有一些字符串格式的问题,我在格式化特定格式时强制文化:

get { return String.Format("{0:###,###,###,###,##0}", Convert.ToDecimal(_monthPay, new System.Globalization.CultureInfo("es-ES"))); }

这样我就可以得到这个:

300.000,01 美元

在本地主机上它工作正常,但是当我发布到服务器时,我得到这个:

300,000.01 美元

不知道为什么!!!我无权访问服务器,因此无法更改服务器上的区域设置;还有另一种解决方法吗?以便我在本地主机上和发布时正常工作?

谢谢。

最佳答案

您在错误的位置传递了 CultureInfo

通过将 CultureInfo 传递给 Convert.ToDecimal,您告诉 Convert.ToDecimal 使用该文化转换数字。 (如果_monthPay是一个字符串需要解析的话,这个是相关的)
但是,您没有将 CultureInfo 传递给 String.Format,因此它仍在使用默认文化。

顺便说一下,如果您要组合多个值,您应该只使用 String.Format。在您的情况下,您应该调用 ToString 重载。另外,您的格式字符串不必要地很长;你可以简单地写#,0。如果您想包含货币符号,只需使用 C 即可。

因此,您应该编写 Convert.ToDecimal(_monthPay).ToString("#,0", new System.Globalization.CultureInfo("es-ES"))

关于c# - 货币格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1970209/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com