Single.ToString Method
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Converts the numeric value of this instance to its equivalent string representation.
Assembly: mscorlib (in mscorlib.dll)
The return value can be PositiveInfinitySymbol, NegativeInfinitySymbol, NaNSymbol, or a string of the form:
[sign]integral-digits[.[fractional-digits]][e[sign]exponential-digits]
Optional elements are framed in square brackets ([ and ]). Elements that contain the term "digits" consist of a series of numeric characters ranging from 0 to 9. The following table describes each element.
Element | Description |
|---|---|
sign | A negative sign or positive sign symbol. |
integral-digits | A series of digits specifying the integral part of the number. Integral-digits can be absent if there are fractional-digits. |
'.' | A culture-specific decimal point symbol. |
fractional-digits | A series of digits specifying the fractional part of the number. |
'e' | A lowercase character 'e', indicating exponential (scientific) notation. |
exponential-digits | A series of digits specifying an exponent. |
Some examples of the return value are "100", "-123,456,789", "123.45e+6", "500", "3.1416", "600", "-0.123", and "-Infinity".
This overload of the ToString method implicitly uses the general numeric format specifier ("G") and the NumberFormatInfo object for the current culture.
The following example uses the default Single.ToString method to display the string representations of a number of Single values.
' Example for the Single.ToString( ) methods. Imports System.Globalization Module Example Public Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock) Dim singleValue As Single = 11876.54321 Dim format As String = " {0,-30}{1}" outputBlock.Text &= String.Format("This example of" & vbCrLf & _ " Single.ToString( ), " & vbCrLf & _ " Single.ToString( String )," & vbCrLf & _ " Single.ToString( IFormatProvider ), and " & vbCrLf & _ " Single.ToString( String, IFormatProvider )" & _ vbCrLf & "generates the following output when run in " & _ "the [{0}] culture. " & vbCrLf & "A Single number is " & _ "formatted with various combinations of format " & _ "" & vbCrLf & "strings and IFormatProvider.", _ CultureInfo.CurrentCulture.Name) & vbCrLf ' Format the number without and with format strings. outputBlock.Text &= String.Format(vbCrLf & "IFormatProvider is not " & _ "used; the default culture is [{0}]:", _ CultureInfo.CurrentCulture.Name) & vbCrLf outputBlock.Text &= String.Format(format, _ "No format string:", singleValue.ToString()) & vbCrLf outputBlock.Text &= String.Format(format, _ "'N5' format string:", singleValue.ToString("N5")) & vbCrLf outputBlock.Text &= String.Format(format, _ "'E' format string:", singleValue.ToString("E")) & vbCrLf outputBlock.Text &= String.Format(format, _ "'E5' format string:", singleValue.ToString("E5")) & vbCrLf ' Create a CultureInfo object for another culture. Use ' [Dutch - The Netherlands] unless the current culture ' is Dutch language. In that case use [English - U.S.]. Dim cultureName As String = IIf( _ CultureInfo.CurrentCulture.Name.Substring(0, 2) = _ "nl", "en-US", "nl-NL") Dim culture As New CultureInfo(cultureName) ' Use the CultureInfo object for an IFormatProvider. outputBlock.Text &= String.Format(vbCrLf & "A CultureInfo object " & _ "for [{0}] is used for the IFormatProvider: ", _ cultureName) & vbCrLf outputBlock.Text &= String.Format(format, "No format string:", _ singleValue.ToString(culture)) & vbCrLf outputBlock.Text &= String.Format(format, "'N5' format string:", _ singleValue.ToString("N5", culture)) & vbCrLf outputBlock.Text &= String.Format(format, "'E' format string:", _ singleValue.ToString("E", culture)) & vbCrLf ' Get the NumberFormatInfo object from CultureInfo, and ' then change the digit group size to 2 and the digit ' separator to '_'. Dim numInfo As NumberFormatInfo = culture.NumberFormat numInfo.NumberGroupSizes = New Integer() {2} numInfo.NumberGroupSeparator = "_" ' Use a NumberFormatInfo object for IFormatProvider. outputBlock.Text &= String.Format(vbCrLf & _ "A NumberFormatInfo object with digit group " & _ "size = 2 and " & vbCrLf & "digit separator " & _ "= '_' is used for the IFormatProvider:") & vbCrLf outputBlock.Text &= String.Format(format, "'N' format string:", _ singleValue.ToString("N", culture)) & vbCrLf outputBlock.Text &= String.Format(format, "'E' format string:", _ singleValue.ToString("E", culture)) & vbCrLf End Sub End Module ' This example of ' Single.ToString( ), ' Single.ToString( String ), ' Single.ToString( IFormatProvider ), and ' Single.ToString( String, IFormatProvider ) ' generates the following output when run in the [en-US] culture. ' A Single number is formatted with various combinations of format ' strings and IFormatProvider. ' ' IFormatProvider is not used; the default culture is [en-US]: ' No format string: 11876.54 ' 'N5' format string: 11,876.54000 ' 'E' format string: 1.187654E+004 ' 'E5' format string: 1.18765E+004 ' ' A CultureInfo object for [nl-NL] is used for the IFormatProvider: ' No format string: 11876,54 ' 'N5' format string: 11.876,54000 ' 'E' format string: 1,187654E+004 ' ' A NumberFormatInfo object with digit group size = 2 and ' digit separator = '_' is used for the IFormatProvider: ' 'N' format string: 1_18_76,54 ' 'E' format string: 1,187654E+004
The following code example illustrates the use of the Parse(String) method along with the ToString method.
Dim Done As Boolean = False Dim Inp As String Do outputBlock.Text &= "Enter a real number: " Inp = Console.ReadLine() Try S = Single.Parse(Inp) outputBlock.Text &= "You entered " + S.ToString() + "." & vbCrLf Done = True Catch E As FormatException outputBlock.Text &= "You did not enter a number." & vbCrLf Catch E As Exception outputBlock.Text &= "An exception occurred while parsing your response: " + E.ToString() & vbCrLf End Try Loop While Not Done