NumberFormatInfo.NumberGroupSizes Özellik
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.
Sayısal değerlerde her gruptaki basamak sayısını ondalık değerin soluna alır veya ayarlar.
public:
property cli::array <int> ^ NumberGroupSizes { cli::array <int> ^ get(); void set(cli::array <int> ^ value); };
public int[] NumberGroupSizes { get; set; }
member this.NumberGroupSizes : int[] with get, set
Public Property NumberGroupSizes As Integer()
Özellik Değeri
Sayısal değerlerde ondalık değerin solundaki her gruptaki basamak sayısı. için InvariantInfo varsayılan değer, 3 olarak ayarlanmış tek bir öğeye sahip tek boyutlu bir dizidir.
Özel durumlar
özelliği olarak null
ayarlanıyor.
özelliği ayarlanıyor ve dizi 0'dan küçük veya 9'dan büyük bir girdi içeriyor.
-veya-
özelliği ayarlanıyor ve dizi, son girdi dışında 0 olarak ayarlanmış bir girdi içeriyor.
özelliği ayarlanıyor ve NumberFormatInfo nesne salt okunur.
Örnekler
Aşağıdaki örnekte özelliği değiştirmenin etkisi gösterilmektedir NumberGroupSizes .
using namespace System;
using namespace System::Globalization;
int main()
{
// Gets a NumberFormatInfo associated with the en-US culture.
CultureInfo^ MyCI = gcnew CultureInfo( "en-US",false );
NumberFormatInfo^ nfi = MyCI->NumberFormat;
// Displays a value with the default separator (S".").
Int64 myInt = 123456789012345;
Console::WriteLine( myInt.ToString( "N", nfi ) );
// Displays the same value with different groupings.
array<Int32>^mySizes1 = {2,3,4};
array<Int32>^mySizes2 = {2,3,0};
nfi->NumberGroupSizes = mySizes1;
Console::WriteLine( myInt.ToString( "N", nfi ) );
nfi->NumberGroupSizes = mySizes2;
Console::WriteLine( myInt.ToString( "N", nfi ) );
}
/*
This code produces the following output.
123, 456, 789, 012, 345.00
12, 3456, 7890, 123, 45.00
1234567890, 123, 45.00
*/
using System;
using System.Globalization;
class NumberFormatInfoSample {
public static void Main() {
// Gets a NumberFormatInfo associated with the en-US culture.
NumberFormatInfo nfi = new CultureInfo( "en-US", false ).NumberFormat;
// Displays a value with the default separator (".").
Int64 myInt = 123456789012345;
Console.WriteLine( myInt.ToString( "N", nfi ) );
// Displays the same value with different groupings.
int[] mySizes1 = {2,3,4};
int[] mySizes2 = {2,3,0};
nfi.NumberGroupSizes = mySizes1;
Console.WriteLine( myInt.ToString( "N", nfi ) );
nfi.NumberGroupSizes = mySizes2;
Console.WriteLine( myInt.ToString( "N", nfi ) );
}
}
/*
This code produces the following output.
123,456,789,012,345.00
12,3456,7890,123,45.00
1234567890,123,45.00
*/
Imports System.Globalization
Class NumberFormatInfoSample
Public Shared Sub Main()
' Gets a NumberFormatInfo associated with the en-US culture.
Dim nfi As NumberFormatInfo = New CultureInfo("en-US", False).NumberFormat
' Displays a value with the default separator (".").
Dim myInt As Int64 = 123456789012345
Console.WriteLine(myInt.ToString("N", nfi))
' Displays the same value with different groupings.
Dim mySizes1 As Integer() = {2, 3, 4}
Dim mySizes2 As Integer() = {2, 3, 0}
nfi.NumberGroupSizes = mySizes1
Console.WriteLine(myInt.ToString("N", nfi))
nfi.NumberGroupSizes = mySizes2
Console.WriteLine(myInt.ToString("N", nfi))
End Sub
End Class
'This code produces the following output.
'
'123,456,789,012,345.00
'12,3456,7890,123,45.00
'1234567890,123,45.00
Aşağıdaki örnek, farklı NumberGroupSizes diziler kullanarak bir değeri yazdırır.
using namespace System;
using namespace System::Globalization;
String^ PrintArraySet( array<Int32>^myArr )
{
String^ myStr = nullptr;
myStr = myArr[ 0 ].ToString();
for ( int i = 1; i < myArr->Length; i++ )
myStr = String::Concat( myStr, ", ", myArr[ i ].ToString() );
return myStr;
}
int main()
{
// Creates a new NumberFormatinfo.
NumberFormatInfo^ myNfi = gcnew NumberFormatInfo;
// Takes a long value.
Int64 myInt = 123456789012345;
// Displays the value with default formatting.
Console::WriteLine( "Default \t\t:\t{0}", myInt.ToString( "N", myNfi ) );
// Displays the value with three elements in the GroupSize array.
array<Int32>^newInts1 = {2,3,4};
myNfi->NumberGroupSizes = newInts1;
Console::WriteLine( "Grouping ( {0} )\t:\t{1}", PrintArraySet( myNfi->NumberGroupSizes ), myInt.ToString( "N", myNfi ) );
// Displays the value with zero as the last element in the GroupSize array.
array<Int32>^newInts2 = {2,4,0};
myNfi->NumberGroupSizes = newInts2;
Console::WriteLine( "Grouping ( {0} )\t:\t{1}", PrintArraySet( myNfi->NumberGroupSizes ), myInt.ToString( "N", myNfi ) );
}
/*
This code produces the following output.
Default : 123, 456, 789, 012, 345.00
Grouping (2, 3, 4) : 12, 3456, 7890, 123, 45.00
Grouping (2, 4, 0) : 123456789, 0123, 45.00
*/
using System;
using System.Globalization;
class SamplesNumberFormatInfo {
public static void Main() {
// Creates a new NumberFormatinfo.
NumberFormatInfo myNfi = new NumberFormatInfo();
// Takes a long value.
Int64 myInt = 123456789012345;
// Displays the value with default formatting.
Console.WriteLine( "Default \t\t:\t{0}", myInt.ToString( "N", myNfi ) );
// Displays the value with three elements in the GroupSize array.
myNfi.NumberGroupSizes = new int[] { 2, 3, 4 };
Console.WriteLine( "Grouping ( {0} )\t:\t{1}",
PrintArraySet( myNfi.NumberGroupSizes ), myInt.ToString( "N", myNfi ) );
// Displays the value with zero as the last element in the GroupSize array.
myNfi.NumberGroupSizes = new int[] { 2, 4, 0 };
Console.WriteLine( "Grouping ( {0} )\t:\t{1}",
PrintArraySet( myNfi.NumberGroupSizes ), myInt.ToString( "N", myNfi ) );
}
public static string PrintArraySet( int[] myArr ) {
string myStr = null;
myStr = myArr[0].ToString();
for ( int i = 1; i < myArr.Length; i++ )
myStr += ", " + myArr[i].ToString();
return( myStr );
}
}
/*
This code produces the following output.
Default : 123,456,789,012,345.00
Grouping ( 2, 3, 4 ) : 12,3456,7890,123,45.00
Grouping ( 2, 4, 0 ) : 123456789,0123,45.00
*/
Imports System.Globalization
Class SamplesNumberFormatInfo
Public Shared Sub Main()
' Creates a new NumberFormatinfo.
Dim myNfi As New NumberFormatInfo()
' Takes a long value.
Dim myInt As Int64 = 123456789012345
' Displays the value with default formatting.
Console.WriteLine("Default " + ControlChars.Tab + ControlChars.Tab _
+ ":" + ControlChars.Tab + "{0}", myInt.ToString("N", myNfi))
' Displays the value with three elements in the GroupSize array.
myNfi.NumberGroupSizes = New Integer() {2, 3, 4}
Console.WriteLine("Grouping ( {0} )" + ControlChars.Tab + ":" _
+ ControlChars.Tab + "{1}", _
PrintArraySet(myNfi.NumberGroupSizes), myInt.ToString("N", myNfi))
' Displays the value with zero as the last element in the GroupSize array.
myNfi.NumberGroupSizes = New Integer() {2, 4, 0}
Console.WriteLine("Grouping ( {0} )" + ControlChars.Tab + ":" _
+ ControlChars.Tab + "{1}", _
PrintArraySet(myNfi.NumberGroupSizes), myInt.ToString("N", myNfi))
End Sub
Public Shared Function PrintArraySet(myArr() As Integer) As String
Dim myStr As String = Nothing
myStr = myArr(0).ToString()
Dim i As Integer
For i = 1 To myArr.Length - 1
myStr += ", " + myArr(i).ToString()
Next i
Return myStr
End Function
End Class
' This code produces the following output.
'
' Default : 123,456,789,012,345.00
' Grouping ( 2, 3, 4 ) : 12,3456,7890,123,45.00
' Grouping ( 2, 4, 0 ) : 123456789,0123,45.00
Açıklamalar
özelliğinin NumberGroupSizes değeri, "N" kullanılarak biçimlendirilmiş sayı değerlerinin sonucunu etkiler. Özel bir sayısal biçim dizesi veya diğer standart sayısal biçim dizeleri kullanılırsa, özelliğin NumberGroupSizes değeri yoksayılır.
Tek boyutlu dizideki her öğe 1 ile 9 arasında bir tamsayı olmalıdır. Son öğe 0 olabilir.
Dizinin ilk öğesi, öğesinin hemen solundaki NumberDecimalSeparatoren az önemli basamak grubundaki öğe sayısını tanımlar. Sonraki her öğe, önceki grubun solundaki bir sonraki önemli basamak grubuna başvurur. Dizinin son öğesi 0 değilse, kalan basamaklar dizinin son öğesine göre gruplandırılır. Son öğe 0 ise, kalan basamaklar gruplandırılmaz.
Örneğin, dizi { 3, 4, 5 } içeriyorsa basamaklar "55.55555.5555.55555.4444.333.00" gibi gruplandırılır. Dizi { 3, 4, 0 } içeriyorsa basamaklar "5555555555555555555555,4444,333,00" gibi gruplandırılır.