本实例主要介绍C#中如何设置货币数值中使用的小数位数。主要是使用NumberFormatInfo类的CurrencyDecimalDigits属性来设置在货币值中使用的小数位数,使用CultureInfo类的NumberFormat属性来指定字符串的域区样。
语法格式如下:
Public int CurrencyDecimalDigits{get;set;}
属性值:要在货币值中使用的小数位数。InvariantInfo的默认值为2。
CultureInfo类提供有关特定区域性的信息(如区域性的名称、书写系统和使用的日历)以及如何设置日期和排序字符串的格式。此类有多种重载形式,本实例使用的重载形式如下:
Public CultureInfo (int culture,bool useUserOverride)
参数说明
Culture:预定义的CultureInfo标识符、现有CultureInfo对象的LCID属性或仅Windows区域性标识符。
UseUserOverride:一个布尔值,指示是使用用户选定的区域性设置(True),还是使用默认区域性设置(False)。
NumberFormat属性获取或设置NumberFormatInfo,它定义适合区域性的、显示数字、货币和百分比的格式。其语法格式如下:
Public virtual NumberFormatInfo NumberFormat{get;set;}
属性值:一个NumberFormatInfo,它定义适合区域性的、显示数字、货币和百分比的格式。
主要代码如下:
System.Globalization.NumberFormatInfo GN=newSystem.Globalization.CultureInfo(“zh-CN”,false).NumberFormat;
Int64 myInt=12345;
Private void button2_Click(object sender,EventArgs e)
{
GN.CurrencyDecimalDigits=2;
MessageBox.Show(myInt.ToString(“C”,GN),”保留两位小数”);
}
Private void button4_Click(object sender,EventArgs e)
{
GN.CurrencyDecimalDigits=3;
MessageBox.Show(myInt.ToString(“C”,GN),”保留三位小数”);
}