NumberStyles Sabit listesi
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Tamsayı ve kayan nokta sayısal türlerinin ve TryParse
yöntemlerine Parse
geçirilen sayısal dize bağımsız değişkenlerinde izin verilen stilleri belirler.
Bu sabit listesi, üyeleri için bit düzeyinde karşılaştırmayı destekler.
public enum class NumberStyles
[System.Flags]
public enum NumberStyles
[System.Flags]
[System.Serializable]
public enum NumberStyles
[System.Flags]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum NumberStyles
[<System.Flags>]
type NumberStyles =
[<System.Flags>]
[<System.Serializable>]
type NumberStyles =
[<System.Flags>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type NumberStyles =
Public Enum NumberStyles
- Devralma
- Öznitelikler
Alanlar
AllowBinarySpecifier | 1024 | Sayısal dizenin bir ikili değeri temsil ettiğini gösterir. Geçerli ikili değerler 0 ve 1 sayısal basamaklarını içerir. Bu stil kullanılarak ayrıştırılan dizeler bir ön ek kullanmaz; |
AllowCurrencySymbol | 256 | Sayısal dizenin para birimi simgesi içerebileceğini gösterir. Geçerli para birimi simgeleri özelliği tarafından CurrencySymbol belirlenir. |
AllowDecimalPoint | 32 | Sayısal dizenin ondalık ayırıcısı olabileceğini gösterir. NumberStyles Değer bayrağını AllowCurrencySymbol içeriyorsa ve ayrıştırılmış dize bir para birimi simgesi içeriyorsa, ondalık ayırıcı karakteri özelliği tarafından CurrencyDecimalSeparator belirlenir. Aksi takdirde, ondalık ayırıcı karakteri özelliği tarafından NumberDecimalSeparator belirlenir. |
AllowExponent | 128 | Sayısal dizenin üstel gösterimde olabileceğini gösterir. bayrağı, AllowExponent ayrıştırılan dizenin "E" veya "e" karakteriyle başlayan ve ardından isteğe bağlı pozitif veya negatif işareti ve tamsayı içeren bir üs içermesine olanak tanır. Başka bir deyişle, nnnE xx, nnn E+xx ve nnnE-xx biçimindeki dizeleri başarıyla ayrıştırıyor. Bu, ondalık ayırıcıya veya işaret ya da mantiste oturum açmaya izin vermez; dizesindeki bu öğelerin ayrıştırılması için ve AllowLeadingSign bayraklarını veya AllowDecimalPoint bu tek tek bayrakları içeren bileşik stili kullanın. |
AllowHexSpecifier | 512 | Sayısal dizenin onaltılık değeri temsil ettiğini gösterir. Geçerli onaltılık değerler 0-9 sayısal basamaklarını ve onaltılık basamak A-F ve a-f'yi içerir. Bu stil kullanılarak ayrıştırılan dizelere "0x" veya "&h" ön eki eklenemez. Stille AllowHexSpecifier ayrıştırılan bir dize her zaman onaltılık değer olarak yorumlanır. ile AllowHexSpecifier birleştirilebilen tek bayraklar ve AllowTrailingWhite'tirAllowLeadingWhite. Numaralandırma, NumberStyles bu üç bayrağı içeren bileşik stili HexNumberiçerir. |
AllowLeadingSign | 4 | Sayısal dizenin bir baştaki işareti olabileceğini gösterir. Geçerli baştaki işaret karakterleri ve NegativeSign özellikleri tarafından PositiveSign belirlenir. |
AllowLeadingWhite | 1 | Ayrıştırılmış dizede baştaki boşluk karakterlerinin bulunabileceğini gösterir. Geçerli boşluk karakterleri U+0009, U+000A, U+000B, U+000C, U+000D ve U+0020 Unicode değerlerine sahiptir. Bunun, yönteminin döndürdüğü |
AllowParentheses | 16 | Sayısal dizenin, sayıyı kapsayan bir çift paranteze sahip olabileceğini gösterir. Parantezler ayrıştırılacak dizenin negatif bir sayıyı temsil ettiğini gösterir. |
AllowThousands | 64 | Sayısal dizenin, yüzleri binlerden ayıran simgeler gibi grup ayırıcıları olabileceğini gösterir. NumberStyles Değer bayrağını AllowCurrencySymbol içeriyorsa ve ayrıştırılacak dize bir para birimi simgesi içeriyorsa, geçerli grup ayırıcı karakteri özelliği tarafından CurrencyGroupSeparator belirlenir ve her gruptaki basamak sayısı özelliği tarafından CurrencyGroupSizes belirlenir. Aksi takdirde, geçerli grup ayırıcı karakteri özelliği tarafından NumberGroupSeparator belirlenir ve her gruptaki basamak sayısı özelliği tarafından NumberGroupSizes belirlenir. |
AllowTrailingSign | 8 | Sayısal dizenin sonunda bir işaret olabileceğini gösterir. Geçerli sondaki işaret karakterleri ve NegativeSign özellikleri tarafından PositiveSign belirlenir. |
AllowTrailingWhite | 2 | Sondaki boşluk karakterlerinin ayrıştırılmış dizede bulunabileceğini gösterir. Geçerli boşluk karakterleri U+0009, U+000A, U+000B, U+000C, U+000D ve U+0020 Unicode değerlerine sahiptir. Bunun, yönteminin döndürdüğü |
Any | 511 | ve AllowBinarySpecifier dışındaki AllowHexSpecifier tüm stillerin kullanıldığını gösterir. Bu bileşik bir sayı stilidir. |
BinaryNumber | 1027 | , AllowTrailingWhiteve AllowBinarySpecifier stillerinin AllowLeadingWhitekullanıldığını gösterir. Bu bileşik bir sayı stilidir. |
Currency | 383 | ve AllowHexSpecifier dışındaki AllowExponent tüm stillerin kullanıldığını gösterir. Bu bileşik bir sayı stilidir. |
Float | 167 | , , AllowTrailingWhite, AllowLeadingSign, AllowDecimalPointve AllowExponent stillerinin AllowLeadingWhitekullanıldığını gösterir. Bu bileşik bir sayı stilidir. |
HexNumber | 515 | , AllowTrailingWhiteve AllowHexSpecifier stillerinin AllowLeadingWhitekullanıldığını gösterir. Bu bileşik bir sayı stilidir. |
Integer | 7 | , AllowTrailingWhiteve AllowLeadingSign stillerinin AllowLeadingWhitekullanıldığını gösterir. Bu bileşik bir sayı stilidir. |
None | 0 | Ayrıştırılmış dizede baştaki veya sondaki boşluk, binlik ayırıcısı veya ondalık ayırıcı gibi stil öğelerinin bulunaabileceğini gösterir. Ayrıştırılacak dize yalnızca tam sayı ondalık basamaklarından oluşmalıdır. |
Number | 111 | AllowLeadingWhite, , AllowTrailingWhite, AllowLeadingSign, AllowTrailingSign, AllowDecimalPointve AllowThousands stillerinin kullanıldığını gösterir. Bu bileşik bir sayı stilidir. |
Örnekler
Bu örnekte, çeşitli NumberStyles
bayraklar kullanarak bir dizeyi 32 bitlik bir tamsayıya ayrıştırma gösterilmektedir.
using namespace System;
using namespace System::Text;
using namespace System::Globalization;
int main()
{
// Parse the string as a hex value and display the
// value as a decimal.
String^ numberString = "A";
int stringValue = Int32::Parse(numberString, NumberStyles::HexNumber);
Console::WriteLine("{0} in hex = {1} in decimal.",
numberString, stringValue);
// Parse the string, allowing a leading sign, and ignoring
// leading and trailing white spaces.
numberString = " -45 ";
stringValue =Int32::Parse(numberString, NumberStyles::AllowLeadingSign |
NumberStyles::AllowLeadingWhite | NumberStyles::AllowTrailingWhite);
Console::WriteLine("'{0}' parsed to an int is '{1}'.",
numberString, stringValue);
// Parse the string, allowing parentheses, and ignoring
// leading and trailing white spaces.
numberString = " (37) ";
stringValue = Int32::Parse(numberString, NumberStyles::AllowParentheses |
NumberStyles::AllowLeadingSign | NumberStyles::AllowLeadingWhite |
NumberStyles::AllowTrailingWhite);
Console::WriteLine("'{0}' parsed to an int is '{1}'.",
numberString, stringValue);
}
// 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'.
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'.
Imports System.Globalization
Imports System.Text
Public Module Example
Public Sub Main()
' Parse the string as a hex value and display the value as a decimal.
Dim num As String = "A"
Dim val As Integer = Int32.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 = Integer.Parse(num, NumberStyles.AllowLeadingSign Or
NumberStyles.AllowLeadingWhite Or
NumberStyles.AllowTrailingWhite)
Console.WriteLine("'{0}' parsed to an integer is '{1}'.", num, val)
' Parse the string, allowing parentheses, and ignoring leading and trailing white spaces.
num = " (37) "
val = Integer.Parse(num, NumberStyles.AllowParentheses Or
NumberStyles.AllowLeadingSign Or
NumberStyles.AllowLeadingWhite Or
NumberStyles.AllowTrailingWhite)
Console.WriteLine("'{0}' parsed to an integer is '{1}'.", num, val)
End Sub
End Module
' The example displays the following output:
' A in hex = 10 in decimal.
' ' -45 ' parsed to an int is '-45'.
' ' (37) ' parsed to an int is '-37'.
Açıklamalar
Numaralandırma, NumberStyles sayısal değerlerin dize gösterimlerini ayrıştırmak için kullanılan iki tür numaralandırma değerinden oluşur:
- Ayrıştırılmış dizede bulunabilecek belirli stil öğelerini (boşluk ve grup ayırıcıları gibi) tanımlayan tek tek alan bayrakları.
- Ayrıştırılmış dizede bulunabilecek stil öğelerini tanımlayan birden çok alan bayrağından oluşan bileşik sayı stilleri.
AllowHexSpecifier
dışında, numaralandırmadaki NumberStyles tek tek alan bayrakları ondalık sayının dize gösterimi ayrıştırılırken kullanılan stil öğelerini tanımlar.
None
ayrıştırılmış dizede yalnızca basamakların bulunabileceğini gösterir. Kalan tek tek alan bayrakları, ayrıştırma işleminin başarılı olması için ondalık bir sayının dize gösteriminde mevcut olabilecek ancak olması gerekmeyen stil öğelerini tanımlar. Buna karşılık, AllowHexSpecifier
bayrağı ayrıştırılacak dizenin her zaman onaltılık değer olarak yorumlandığını gösterir. ile AllowHexSpecifier
kullanılabilen tek tek alan bayrakları ve AllowTrailingWhite
'tirAllowLeadingWhite
. Numaralandırma, NumberStyles üç bayrağın tümünü içeren bileşik bir sayı stili HexNumber
içerir.
Ayrıştırılacak dizede görüntülenebilen simgeler (para birimi simgesi, grup ayırıcısı, ondalık ayırıcı ve pozitif ve negatif işaretler gibi), örtük olarak veya açıkça yönteme Parse
geçirilen nesnenin System.Globalization.NumberFormatInfo üyeleri tarafından tanımlanır. Bu konudaki members tablosu her bir bayrağın açıklamasını sağlar ve özelliklerle NumberFormatInfo ilişkisini gösterir.
Aşağıdaki tabloda bileşik sayı stilleri listelenir ve bunların içerdiği tek tek alan bayrakları gösterilir. Hücredeki "1", bileşik sayı stilinin bu satırdaki tek tek sayı stilini içerdiğini gösterir. "0", bileşik sayı stilinin tek tek sayı stilini içermediğini gösterir.
Herhangi biri | Para Birimi | Float | Tamsayı | Sayı | Hexnumber | İkili Sayı | |
---|---|---|---|---|---|---|---|
AllowBinarySpecifier (0x0400) | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
AllowHexSpecifier (0x0200) | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
AllowCurrencySymbol (0x0100) | 1 | 1 | 0 | 0 | 0 | 0 | 0 |
AllowExponent (0x0080) | 1 | 0 | 1 | 0 | 0 | 0 | 0 |
AllowThousands (0x0040) | 1 | 1 | 0 | 0 | 1 | 0 | 0 |
AllowDecimalPoint (0x0020) | 1 | 1 | 1 | 0 | 1 | 0 | 0 |
AllowParentheses (0x0010) | 1 | 1 | 0 | 0 | 0 | 0 | 0 |
AllowTrailingSign (0x0008) | 1 | 1 | 0 | 0 | 1 | 0 | 0 |
AllowLeadingSign (0x0004) | 1 | 1 | 1 | 1 | 1 | 0 | 0 |
AllowTrailingWhite (0x0002) | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
AllowLeadingWhite (0x0001) | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
(0x1ff) | (0x17f) | (0x0a7) | (0x007) | (0x06f) | (0x203) | (0x403) |