NumberStyles在类型转换时的使用

以下内容整理自MSDN和.NET FRAMEWORK PROGRAMING

NumberStyles 枚举  .NET Framework 3.0

确定数字字符串参数中允许的样式,这些参数被传递到数字基类型类的 Parse 方法。

此枚举有一个 FlagsAttribute 属性,允许其成员值按位组合。

命名空间: System.Globalization
程序集: mscorlib(在 mscorlib.dll 中)

[SerializableAttribute]
[FlagsAttribute]
[ComVisibleAttribute(true)]
public enum NumberStyles
成员


 成员名称说明
.NET Compact Framework 提供支持 AllowCurrencySymbol 指示如果数字字符串包含货币符号则将其作为货币分析;否则,将其作为数字分析。有效的货币符号由 NumberFormatInfoCurrencySymbol 属性确定。 
.NET Compact Framework 提供支持 AllowDecimalPoint 指示数字字符串可以具有小数点。有效的小数点字符由 NumberFormatInfoNumberDecimalSeparatorCurrencyDecimalSeparator 属性确定。 
.NET Compact Framework 提供支持 AllowExponent 指示数字字符串用于指数符号中。 
.NET Compact Framework 提供支持 AllowHexSpecifier 指示数值字符串表示一个十六进制值。有效的十六进制值包括数字 0-9 和十六进制数字 A-F 与 a-f。十六进制值的左侧可以用零填充。使用此样式分析���字符串不允许以“0x”为前缀。 
.NET Compact Framework 提供支持 AllowLeadingSign 指示数字字符串可以具有前导符号。有效的前导符号字符是由 NumberFormatInfoPositiveSignNegativeSign 属性确定的。 
.NET Compact Framework 提供支持 AllowLeadingWhite 指示在分析期间必须忽略前导空白字符。有效的空白字符具有 Unicode 值 U+0009、U+000A、U+000B、U+000C、U+000D 和 U+0020。 
.NET Compact Framework 提供支持 AllowParentheses 指示数字字符串可以具有一对将数字括起来的括号。 
.NET Compact Framework 提供支持 AllowThousands 指示数字字符串可以具有组分隔符;例如,将百位与千位分隔开来。有效的组分隔符字符是由 NumberFormatInfoNumberGroupSeparatorCurrencyGroupSeparator 属性确定的,并且每组中的位数是由 NumberFormatInfoNumberGroupSizesCurrencyGroupSizes 属性确定的。 
.NET Compact Framework 提供支持 AllowTrailingSign 指示数字字符串可以具有结尾符号。有效的结尾符号字符是由 NumberFormatInfoPositiveSignNegativeSign 属性确定的。 
.NET Compact Framework 提供支持 AllowTrailingWhite 指示分析期间必须忽略结尾空白字符。有效的空白字符具有 Unicode 值 U+0009、U+000A、U+000B、U+000C、U+000D 和 U+0020。 
.NET Compact Framework 提供支持 Any 指示使用 AllowHexSpecifier 以外的所有样式。这是复合数字样式。 
.NET Compact Framework 提供支持 Currency 指示使用 AllowExponent 和 AllowHexSpecifier 以外的所有样式。这是复合数字样式。 
.NET Compact Framework 提供支持 Float 指示使用 AllowLeadingWhite、AllowTrailingWhite、AllowLeadingSign、AllowDecimalPoint 和 AllowExponent 样式。这是复合数字样式。 
.NET Compact Framework 提供支持 HexNumber 指示使用 AllowLeadingWhite、AllowTrailingWhite 和 AllowHexSpecifier 样式。这是复合数字样式。 
.NET Compact Framework 提供支持 Integer 指示使用 AllowLeadingWhite、AllowTrailingWhite 和 AllowLeadingSign 样式。这是复合数字样式。 
.NET Compact Framework 提供支持 None 指示不允许使用任何位样式。 
.NET Compact Framework 提供支持 Number

指示使用 AllowLeadingWhite、AllowTrailingWhite、AllowLeadingSign、AllowTrailingSign、AllowDecimalPoint 和 AllowThousands 样式。这是复合数字样式。 

示例代码:

 

代码
using System;
using System.Text;
using System.Globalization;

public sealed class App
{
static void Main()
{
// Parse the string as a hex value and display the value as a decimal.
String num = "A";
int val = int.Parse(num, NumberStyles.HexNumber);
Console.WriteLine(
"{0} in hex = {1} in decimal.", num, val);

// Parse the string, allowing a leading sign, and ignoring leading and trailing white spaces.
num = " -45 ";
val
= int.Parse(num, NumberStyles.AllowLeadingSign |
NumberStyles.AllowLeadingWhite
| NumberStyles.AllowTrailingWhite);
Console.WriteLine(
"'{0}' parsed to an int is '{1}'.", num, val);

// Parse the string, allowing parentheses, and ignoring leading and trailing white spaces.
num = " (37) ";
val
= int.Parse(num, NumberStyles.AllowParentheses | NumberStyles.AllowLeadingSign | NumberStyles.AllowLeadingWhite | NumberStyles.AllowTrailingWhite);
Console.WriteLine(
"'{0}' parsed to an int is '{1}'.", num, val);
}
}

// This code produces the following output.
//
// A in hex = 10 in decimal.
// ' -45 ' parsed to an int is '-45'.
// ' (37) ' parsed to an int is '-37'.

 

 

 

posted on 2010-10-02 12:57  tneduts  阅读(2427)  评论(0编辑  收藏  举报

导航