BigInteger.ToString 方法

定义

将当前 BigInteger 对象的数值转换为其等效字符串表示形式。Converts the numeric value of the current BigInteger object to its equivalent string representation.

重载

ToString()

将当前 BigInteger 对象的数值转换为其等效字符串表示形式。Converts the numeric value of the current BigInteger object to its equivalent string representation.

ToString(IFormatProvider)

使用指定的区域性特定格式设置信息将当前 BigInteger 对象的数值转换为它的等效字符串表示形式。Converts the numeric value of the current BigInteger object to its equivalent string representation by using the specified culture-specific formatting information.

ToString(String)

使用指定的格式将当前 BigInteger 对象的数值转换为它的等效字符串表示形式。Converts the numeric value of the current BigInteger object to its equivalent string representation by using the specified format.

ToString(String, IFormatProvider)

使用指定的格式和区域性特定格式信息将当前 BigInteger 对象的数值转换为它的等效字符串表示形式。Converts the numeric value of the current BigInteger object to its equivalent string representation by using the specified format and culture-specific format information.

ToString()

将当前 BigInteger 对象的数值转换为其等效字符串表示形式。Converts the numeric value of the current BigInteger object to its equivalent string representation.

public:
 override System::String ^ ToString();
public override string ToString ();
override this.ToString : unit -> string
Public Overrides Function ToString () As String

返回

当前 BigInteger 值的字符串表示形式。The string representation of the current BigInteger value.

示例

下面的示例使用默认的 ToString() 方法显示 BigInteger 值。The following example displays a BigInteger value by using the default ToString() method. 它还显示了使用某些标准格式说明符生成的 BigInteger 值的字符串表示形式。It also displays the string representations of the BigInteger value that results from using some standard format specifiers. 这些示例使用 en-us 区域性的格式设置约定来显示。The examples are displayed using the formatting conventions of the en-US culture.

// Initialize a BigInteger value.
BigInteger value = BigInteger.Add(UInt64.MaxValue, 1024);

// Display value using the default ToString method.
Console.WriteLine(value.ToString());     
// Display value using some standard format specifiers.
Console.WriteLine(value.ToString("G"));
Console.WriteLine(value.ToString("C"));
Console.WriteLine(value.ToString("D"));
Console.WriteLine(value.ToString("F"));
Console.WriteLine(value.ToString("N"));
Console.WriteLine(value.ToString("X"));       
// The example displays the following output on a system whose current 
// culture is en-US:
//       18446744073709552639
//       18446744073709552639
//       $18,446,744,073,709,552,639.00
//       18446744073709552639
//       18446744073709552639.00
//       18,446,744,073,709,552,639.00
//       100000000000003FF      
' Initialize a BigInteger value.
Dim value As BigInteger = BigInteger.Add(UInt64.MaxValue, 1024)

' Display value using the default ToString method.
Console.WriteLine(value.ToString())        
' Display value using some standard format specifiers.
Console.WriteLine(value.ToString("G"))
Console.WriteLine(value.ToString("C"))
Console.WriteLine(value.ToString("D"))
Console.WriteLine(value.ToString("F"))
Console.WriteLine(value.ToString("N"))
Console.WriteLine(value.ToString("X"))       
' The example displays the following output on a system whose current 
' culture is en-US:
'       18446744073709552639
'       18446744073709552639
'       $18,446,744,073,709,552,639.00
'       18446744073709552639
'       18446744073709552639.00
'       18,446,744,073,709,552,639.00
'       100000000000003FF      

注解

ToString() 方法设置了当前区域性的 "R" 或往返行程格式中 BigInteger 值的格式。The ToString() method formats a BigInteger value in the "R", or round-trip, format of the current culture. 如果要指定其他格式或区域性,请使用 ToString 方法的其他重载,如下所示:If you want to specify a different format or culture, use the other overloads of the ToString method, as follows:

使用格式To use format 对于区域性For culture 使用重载Use the overload
往返("R")格式Round-trip ("R") format 特定区域性A specific culture ToString
特定格式A specific format 默认(当前)区域性Default (current) culture ToString(String)
特定格式A specific format 特定区域性A specific culture ToString(String, IFormatProvider)

如果值为负,则 BigInteger 值的字符串表示形式包括负号,而从0到9之间的数字序列的范围为不带前导零的数字。The string representation of the BigInteger value includes a negative sign if its value is negative, and a sequence of digits ranging from 0 to 9 without leading zeros. 负号由当前区域性的 NumberFormatInfo 对象定义。The negative sign is defined by the NumberFormatInfo object for the current culture.

另请参阅

ToString(IFormatProvider)

使用指定的区域性特定格式设置信息将当前 BigInteger 对象的数值转换为它的等效字符串表示形式。Converts the numeric value of the current BigInteger object to its equivalent string representation by using the specified culture-specific formatting information.

public:
 System::String ^ ToString(IFormatProvider ^ provider);
public string ToString (IFormatProvider provider);
override this.ToString : IFormatProvider -> string
Public Function ToString (provider As IFormatProvider) As String

参数

provider
IFormatProvider

一个提供区域性特定的格式设置信息的对象。An object that supplies culture-specific formatting information.

返回

当前 BigInteger 值的字符串表示形式,该值使用 provider 参数指定的格式。The string representation of the current BigInteger value in the format specified by the provider parameter.

示例

下面的示例实例化一个自定义 NumberFormatInfo 对象,该对象将波形符(~)定义为负号。The following example instantiates a custom NumberFormatInfo object that defines the tilde (~) as a negative sign. 然后,ToString(IFormatProvider) 方法使用自定义 NumberFormatInfo 对象显示负值 BigInteger 值。The ToString(IFormatProvider) method then uses the custom NumberFormatInfo object to display a negative BigInteger value.

BigInteger number = 9867857831128;
number = BigInteger.Pow(number, 3) * BigInteger.MinusOne;

NumberFormatInfo bigIntegerProvider = new NumberFormatInfo();
bigIntegerProvider.NegativeSign = "~";

Console.WriteLine(number.ToString(bigIntegerProvider));
Dim number As BigInteger = 9867857831128
number = BigInteger.Pow(number, 3) * BigInteger.MinusOne

Dim bigIntegerProvider As New NumberFormatInfo()
bigIntegerProvider.NegativeSign = "~"      

Console.WriteLine(number.ToString(bigIntegerProvider))

注解

ToString(IFormatProvider) 方法使用指定区域性的 NumberFormatInfo 对象来设置 "R" 或往返行程格式的 BigInteger 值的格式。The ToString(IFormatProvider) method formats a BigInteger value in the "R", or round-trip, format by using the NumberFormatInfo object of a specified culture. 如果要指定其他格式或当前区域性,请使用 ToString 方法的其他重载,如下所示:If you want to specify a different format or the current culture, use the other overloads of the ToString method, as follows:

使用格式To use format 对于区域性For culture 使用重载Use the overload
往返("R")格式Round-trip ("R") format 默认(当前)区域性Default (current) culture ToString()
特定格式A specific format 默认(当前)区域性Default (current) culture ToString(String)
特定格式A specific format 特定区域性A specific culture ToString(String, IFormatProvider)

provider 参数是一个 IFormatProvider 实现。The provider parameter is an IFormatProvider implementation. 它的 GetFormat 方法返回一个 NumberFormatInfo 对象,该对象提供有关此方法返回的字符串格式的区域性特定信息。Its GetFormat method returns a NumberFormatInfo object that provides culture-specific information about the format of the string returned by this method. 如果 null``provider,则使用当前区域性的 NumberFormatInfo 对象设置 BigInteger 值的格式。If provider is null, the BigInteger value is formatted using the NumberFormatInfo object of the current culture. 使用常规格式说明符控制 BigInteger 值的字符串表示形式的 NumberFormatInfo 对象的唯一属性为 NumberFormatInfo.NegativeSign,这定义了表示负号的字符。The only property of the NumberFormatInfo object that controls the string representation of the BigInteger value using the general format specifier is NumberFormatInfo.NegativeSign, which defines the character that represents the negative sign.

provider 参数可以是以下项之一:The provider parameter can be one of the following:

ToString(String)

使用指定的格式将当前 BigInteger 对象的数值转换为它的等效字符串表示形式。Converts the numeric value of the current BigInteger object to its equivalent string representation by using the specified format.

public:
 System::String ^ ToString(System::String ^ format);
public string ToString (string format);
override this.ToString : string -> string
Public Function ToString (format As String) As String

参数

format
String

标准或自定义的数值格式字符串。A standard or custom numeric format string.

返回

当前 BigInteger 值的字符串表示形式,该值使用 format 参数指定的格式。The string representation of the current BigInteger value in the format specified by the format parameter.

异常

format 不是有效的格式字符串。format is not a valid format string.

示例

下面的示例通过使用每个标准格式字符串和一些自定义格式字符串来初始化 BigInteger 值并显示该值。The following example initializes a BigInteger value and displays it by using each standard format string and some custom format strings.

BigInteger value = BigInteger.Parse("-903145792771643190182");
string[] specifiers = { "C", "D", "D25", "E", "E4", "e8", "F0", 
                        "G", "N0", "P", "R", "X", "0,0.000", 
                        "#,#.00#;(#,#.00#)" };

foreach (string specifier in specifiers)
   Console.WriteLine("{0}: {1}", specifier, value.ToString(specifier));

// The example displays the following output:
//       C: ($903,145,792,771,643,190,182.00)
//       D: -903145792771643190182
//       D25: -0000903145792771643190182
//       E: -9.031457E+020
//       E4: -9.0314E+020
//       e8: -9.03145792e+020
//       F0: -903145792771643190182
//       G: -903145792771643190182
//       N0: -903,145,792,771,643,190,182
//       P: -90,314,579,277,164,319,018,200.00 %
//       R: -903145792771643190182
//       X: CF0A55968BB1A7545A
//       0,0.000: -903,145,792,771,643,190,182.000
//       #,#.00#;(#,#.00#): (903,145,792,771,643,190,182.00)
Dim value As BigInteger = BigInteger.Parse("-903145792771643190182")
Dim specifiers() As String = { "C", "D", "D25", "E", "E4", "e8", "F0", 
                               "G", "N0", "P", "R", "X", "0,0.000", 
                               "#,#.00#;(#,#.00#)" }

For Each specifier As String In specifiers
   Console.WriteLine("{0}: {1}", specifier, value.ToString(specifier))
Next   
' The example displays the following output:
'       C: ($903,145,792,771,643,190,182.00)
'       D: -903145792771643190182
'       D25: -0000903145792771643190182
'       E: -9.031457E+020
'       E4: -9.0314E+020
'       e8: -9.03145792e+020
'       F0: -903145792771643190182
'       G: -903145792771643190182
'       N0: -903,145,792,771,643,190,182
'       P: -90,314,579,277,164,319,018,200.00 %
'       R: -903145792771643190182
'       X: CF0A55968BB1A7545A
'       0,0.000: -903,145,792,771,643,190,182.000
'       #,#.00#;(#,#.00#): (903,145,792,771,643,190,182.00)

注解

ToString(String) 方法通过使用表示当前区域性约定的 NumberFormatInfo 对象来设置指定格式的 BigInteger 值的格式。The ToString(String) method formats a BigInteger value in a specified format by using a NumberFormatInfo object that represents the conventions of the current culture. 如果要使用 "R" 或往返行程、格式或指定不同的区域性,请使用 ToString 方法的其他重载,如下所示:If you want to use the "R", or round-trip, format or specify a different culture, use the other overloads of the ToString method, as follows:

使用格式To use format 对于区域性For culture 使用重载Use the overload
往返("R")格式Round-trip ("R") format 默认(当前)区域性Default (current) culture ToString()
往返("R")格式Round-trip ("R") format 特定区域性A specific culture ToString(IFormatProvider)
特定格式A specific format 特定区域性A specific culture ToString(String, IFormatProvider)

format 参数可以是任何有效的标准数值字符串自定义数字格式字符串的任意组合。The format parameter can be any valid standard numeric string, or any combination of custom numeric format strings. 如果 format 等于 String.Emptynull,则当前 BigInteger 对象的返回值将用往返格式说明符("R")进行格式设置。If format is equal to String.Empty or is null, the return value of the current BigInteger object is formatted with the round-trip format specifier ("R"). 如果 format 为任何其他值,则该方法将引发 FormatExceptionIf format is any other value, the method throws a FormatException.

.NET Framework 提供了广泛的格式设置支持,以下格式设置主题更详细地介绍了这些支持:The .NET Framework provides extensive formatting support, which is described in greater detail in the following formatting topics:

返回的字符串的格式由当前区域性的 NumberFormatInfo 对象确定。The format of the returned string is determined by the NumberFormatInfo object for the current culture. 根据 format 参数,此对象控制输出字符串中的符号,如负号、组分隔符和小数点符号。Depending on the format parameter, this object controls symbols such as the negative sign, the group separator, and the decimal point symbol in the output string. 若要为当前区域性以外的区域性提供格式设置信息,请调用 ToString(String, IFormatProvider) 重载。To provide formatting information for cultures other than the current culture, call the ToString(String, IFormatProvider) overload.

另请参阅

ToString(String, IFormatProvider)

使用指定的格式和区域性特定格式信息将当前 BigInteger 对象的数值转换为它的等效字符串表示形式。Converts the numeric value of the current BigInteger object to its equivalent string representation by using the specified format and culture-specific format information.

public:
 virtual System::String ^ ToString(System::String ^ format, IFormatProvider ^ provider);
public string ToString (string format, IFormatProvider provider);
override this.ToString : string * IFormatProvider -> string
Public Function ToString (format As String, provider As IFormatProvider) As String

参数

format
String

标准或自定义的数值格式字符串。A standard or custom numeric format string.

provider
IFormatProvider

一个提供区域性特定的格式设置信息的对象。An object that supplies culture-specific formatting information.

返回

BigIntegerformat 参数指定的当前 provider 值的字符串表示形式。The string representation of the current BigInteger value as specified by the format and provider parameters.

实现

异常

format 不是有效的格式字符串。format is not a valid format string.

示例

下面的示例使用标准格式字符串和将颚化符(~)定义为负号的 NumberFormatInfo 对象将 BigInteger 值进行初始化,并将其显示到控制台。The following example initializes a BigInteger value, and displays it to the console using a standard format string and a NumberFormatInfo object that defines the tilde (~) as a negative sign.

// Redefine the negative sign as the tilde for the invariant culture.
NumberFormatInfo bigIntegerFormatter = new NumberFormatInfo();
bigIntegerFormatter.NegativeSign = "~";

BigInteger value = BigInteger.Parse("-903145792771643190182");
string[] specifiers = { "C", "D", "D25", "E", "E4", "e8", "F0", 
                        "G", "N0", "P", "R", "X", "0,0.000", 
                        "#,#.00#;(#,#.00#)" };

foreach (string specifier in specifiers)
   Console.WriteLine("{0}: {1}", specifier, value.ToString(specifier, 
                     bigIntegerFormatter));

// The example displays the following output:
//    C: (☼903,145,792,771,643,190,182.00)
//    D: ~903145792771643190182
//    D25: ~0000903145792771643190182
//    E: ~9.031457E+020
//    E4: ~9.0314E+020
//    e8: ~9.03145792e+020
//    F0: ~903145792771643190182
//    G: ~903145792771643190182
//    N0: ~903,145,792,771,643,190,182
//    P: ~90,314,579,277,164,319,018,200.00 %
//    R: ~903145792771643190182
//    X: CF0A55968BB1A7545A
//    0,0.000: ~903,145,792,771,643,190,182.000
//    #,#.00#;(#,#.00#): (903,145,792,771,643,190,182.00)
' Redefine the negative sign as the tilde for the invariant culture.
Dim bigIntegerFormatter As New NumberFormatInfo()
bigIntegerFormatter.NegativeSign = "~"

Dim value As BigInteger = BigInteger.Parse("-903145792771643190182")
Dim specifiers() As String = { "C", "D", "D25", "E", "E4", "e8", "F0", 
                               "G", "N0", "P", "R", "X", "0,0.000", 
                               "#,#.00#;(#,#.00#)" }

For Each specifier As String In specifiers
   Console.WriteLine("{0}: {1}", specifier, value.ToString(specifier, 
                     bigIntegerformatter))
Next   
' The example displays the following output:
'    C: (☼903,145,792,771,643,190,182.00)
'    D: ~903145792771643190182
'    D25: ~0000903145792771643190182
'    E: ~9.031457E+020
'    E4: ~9.0314E+020
'    e8: ~9.03145792e+020
'    F0: ~903145792771643190182
'    G: ~903145792771643190182
'    N0: ~903,145,792,771,643,190,182
'    P: ~90,314,579,277,164,319,018,200.00 %
'    R: ~903145792771643190182
'    X: CF0A55968BB1A7545A
'    0,0.000: ~903,145,792,771,643,190,182.000
'    #,#.00#;(#,#.00#): (903,145,792,771,643,190,182.00)

注解

ToString(String, IFormatProvider) 方法通过使用指定区域性的 NumberFormatInfo 对象来设置指定格式的 BigInteger 值的格式。The ToString(String, IFormatProvider) method formats a BigInteger value in a specified format by using the NumberFormatInfo object of a specified culture. 如果要使用往返格式或默认区域性设置,请使用 ToString 方法的其他重载,如下所示:If you want to use the round-trip format or default culture settings, use the other overloads of the ToString method, as follows:

使用格式To use format 对于区域性For culture 使用重载Use the overload
往返("R")格式Round-trip ("R") format 默认(当前)区域性Default (current) culture ToString()
往返("R")格式Round-trip ("R") format 特定区域性A specific culture ToString(IFormatProvider)
特定格式A specific format 默认(当前)区域性Default (current) culture ToString(String)

format 参数可以是任何有效的标准数值字符串自定义数字格式字符串的任意组合。The format parameter can be any valid standard numeric string, or any combination of custom numeric format strings. 如果 format 等于 String.Emptynull,则当前 BigInteger 对象的返回值将用往返格式说明符("R")进行格式设置。If format is equal to String.Empty or is null, the return value of the current BigInteger object is formatted with the round-trip format specifier ("R"). 如果 format 为任何其他值,则该方法将引发 FormatExceptionIf format is any other value, the method throws a FormatException.

.NET Framework 提供了广泛的格式设置支持,以下格式设置主题更详细地介绍了这些支持:The .NET Framework provides extensive formatting support, which is described in greater detail in the following formatting topics:

provider 参数是一个 IFormatProvider 实现。The provider parameter is an IFormatProvider implementation. 它的 GetFormat 方法返回一个 NumberFormatInfo 对象,该对象提供有关此方法返回的字符串格式的区域性特定信息。Its GetFormat method returns a NumberFormatInfo object that provides culture-specific information about the format of the string returned by this method. 调用 ToString(String, IFormatProvider) 方法时,它将调用 provider 参数的 GetFormat 方法,并向其传递一个表示 NumberFormatInfo 类型的 Type 对象。When the ToString(String, IFormatProvider) method is invoked, it calls the provider parameter's GetFormat method and passes it a Type object that represents the NumberFormatInfo type. 然后 GetFormat 方法返回提供用于格式化 value 参数的信息的 NumberFormatInfo 对象,如负号符号、组分隔符符号或小数点符号。The GetFormat method then returns the NumberFormatInfo object that provides information for formatting the value parameter, such as the negative sign symbol, the group separator symbol, or the decimal point symbol. 使用 provider 参数向 ToString(String, IFormatProvider) 方法提供格式设置信息的方法有三种:There are three ways to use the provider parameter to supply formatting information to the ToString(String, IFormatProvider) method:

  • 可以传递表示提供格式设置信息的区域性的 CultureInfo 对象。You can pass a CultureInfo object that represents the culture that supplies formatting information. 它的 GetFormat 方法返回 NumberFormatInfo 对象,该对象提供该区域性的数字格式设置信息。Its GetFormat method returns the NumberFormatInfo object that provides numeric formatting information for that culture.

  • 可以传递提供数字格式设置信息的实际 NumberFormatInfo 对象。You can pass the actual NumberFormatInfo object that provides numeric formatting information. (其 GetFormat 的实现只返回自身。)(Its implementation of GetFormat just returns itself.)

  • 可以传递实现 IFormatProvider的自定义对象。You can pass a custom object that implements IFormatProvider. 它的 GetFormat 方法实例化并返回提供格式设置信息的 NumberFormatInfo 对象。Its GetFormat method instantiates and returns the NumberFormatInfo object that provides formatting information.

如果 null``provider,则返回的字符串的格式将基于当前区域性的 NumberFormatInfo 对象。If provider is null, the formatting of the returned string is based on the NumberFormatInfo object of the current culture.

另请参阅

适用于