BigInteger.ToString 方法

定义

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

重载

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(String)

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

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, 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);
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.

返回

String

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

实现

例外

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

示例

下面的示例 BigInteger 使用标准格式字符串和 NumberFormatInfo 定义了颚化符 (~) 为负号的对象将值显示到控制台。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)方法 BigInteger 使用 NumberFormatInfo 指定的区域性的对象设置指定格式的值的格式。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.Empty 或为,则 null 当前对象的返回值 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 方法并向其传递一个 Type 表示类型的对象 NumberFormatInfoWhen 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然后,方法返回 NumberFormatInfo 对象,该对象提供用于设置参数格式的信息 value ,如负号符号、组分隔符符号或小数点符号。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.)

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

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

另请参阅

适用于

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);
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.

返回

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)方法 BigInteger 使用 NumberFormatInfo 表示当前区域性约定的对象来设置指定格式的值的格式。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.Empty 或为,则 null 当前对象的返回值 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()

将当前 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

返回

String

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

示例

下面的示例 BigInteger 使用默认方法显示一个值 ToString()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()方法设置 BigInteger 当前区域性的 "R" 或往返行程格式中的值的格式。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);
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.

返回

String

当前 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 对象来显示负值 BigIntegerThe 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)方法 BigInteger 使用指定区域性的对象设置 "R" 或往返行程格式中的值的格式 NumberFormatInfoThe ToString(IFormatProvider) method formats a BigInteger value in the "R", or round-trip, format by using the NumberFormatInfo object of a specified culture. 如果要指定其他格式或当前区域性,请使用方法的其他重载,如下所示 ToStringIf 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. 如果 providernull ,则 BigInteger 使用当前区域性的对象设置值的格式 NumberFormatInfoIf provider is null, the BigInteger value is formatted using the NumberFormatInfo object of the current culture. NumberFormatInfo使用常规格式说明符控制值的字符串表示形式的对象的唯一属性 BigIntegerNumberFormatInfo.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:

适用于