3

我的对象中有一个整数值。我需要将其转换为整数值。所以我这样做了。System.Convert.ToInt64(Object) 但是FxCop说我需要提供IFormatProvider。字符串数据类型我对提供 IFormatProvider 没有任何问题。如何为整数值提供 IFormatProvider?

4

4 回答 4

4

这取决于您需要如何打印您的价值。

例如使用:

var provider = System.Globalization.CultureInfo.InvariantCulture;

您将获得一个独立于本地(区域)设置的字符串。

使用:

var provider = System.Globalization.CultureInfo.CurrentCulture;

或者:

var provider = System.Globalization.CultureInfo.CurrentUICulture;

相反,字符串将使用您的本地(区域)机器设置打印。

于 2011-02-09T13:09:00.827 回答
2

如果你想使用当前文化

System.Globalization.CultureInfo.CurrentCulture.NumberFormat

或例如:

new CultureInfo("en-UK").NumberFormat
于 2011-02-09T13:09:29.340 回答
1

看这里:IFormatProvider 接口

于 2011-02-09T13:06:46.160 回答
1

只转换对象变量有问题吗?

Int64 i = (Int64) myObject;

如果它真的只是一个装箱的整数,我不明白为什么这不起作用。

于 2011-02-09T13:16:57.207 回答