Udostępnij za pośrednictwem


Convert.ToSingle Metoda

Definicja

Konwertuje określoną wartość na liczbę zmiennoprzecinkową o pojedynczej precyzji.

Przeciążenia

ToSingle(String, IFormatProvider)

Konwertuje określoną reprezentację ciągu liczby na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji przy użyciu określonych informacji o formatowaniu specyficznym dla kultury.

ToSingle(SByte)

Konwertuje wartość określonej 8-bitowej liczby całkowitej ze znakiem na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

ToSingle(Object, IFormatProvider)

Konwertuje wartość określonego obiektu na liczbę zmiennoprzecinkową o pojedynczej precyzji przy użyciu określonych informacji o formatowaniu specyficznym dla kultury.

ToSingle(UInt64)

Konwertuje wartość określonej 64-bitowej liczby całkowitej bez znaku na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

ToSingle(UInt32)

Konwertuje wartość określonej 32-bitowej liczby całkowitej bez znaku na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

ToSingle(String)

Konwertuje określoną reprezentację ciągu liczby na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

ToSingle(Single)

Zwraca określoną liczbę zmiennoprzecinkową o pojedynczej precyzji; nie jest wykonywana żadna rzeczywista konwersja.

ToSingle(Object)

Konwertuje wartość określonego obiektu na liczbę zmiennoprzecinkową o pojedynczej precyzji.

ToSingle(UInt16)

Konwertuje wartość określonej 16-bitowej liczby całkowitej bez znaku na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

ToSingle(Int32)

Konwertuje wartość określonej 32-bitowej liczby całkowitej ze znakiem na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

ToSingle(Int16)

Konwertuje wartość określonej 16-bitowej liczby całkowitej ze znakiem na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

ToSingle(Double)

Konwertuje wartość określonej liczby zmiennoprzecinkowej o podwójnej precyzji na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

ToSingle(Decimal)

Konwertuje wartość określonej liczby dziesiętnej na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

ToSingle(DateTime)

Wywołanie tej metody zawsze zgłasza wyjątek InvalidCastException.

ToSingle(Char)

Wywołanie tej metody zawsze zgłasza wyjątek InvalidCastException.

ToSingle(Byte)

Konwertuje wartość określonej 8-bitowej liczby całkowitej bez znaku na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

ToSingle(Boolean)

Konwertuje określoną wartość logiczną na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

ToSingle(Int64)

Konwertuje wartość określonej 64-bitowej liczby całkowitej ze znakiem na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

ToSingle(String, IFormatProvider)

Źródło:
Convert.cs
Źródło:
Convert.cs
Źródło:
Convert.cs

Konwertuje określoną reprezentację ciągu liczby na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji przy użyciu określonych informacji o formatowaniu specyficznym dla kultury.

public:
 static float ToSingle(System::String ^ value, IFormatProvider ^ provider);
public static float ToSingle (string value, IFormatProvider provider);
public static float ToSingle (string? value, IFormatProvider? provider);
static member ToSingle : string * IFormatProvider -> single
Public Shared Function ToSingle (value As String, provider As IFormatProvider) As Single

Parametry

value
String

Ciąg zawierający liczbę, którą należy przekształcić.

provider
IFormatProvider

Obiekt, który dostarcza informacje o formatowaniu specyficzne dla kultury.

Zwraca

Liczba zmiennoprzecinkowa o pojedynczej precyzji, która jest równoważna liczbie w valueelemencie , lub 0 (zero), jeśli value ma wartość null.

Wyjątki

value nie jest liczbą w prawidłowym formacie.

value reprezentuje liczbę mniejszą niż Single.MinValue lub większą niż Single.MaxValue.

Przykłady

W poniższym przykładzie użyto IFormatProvider obiektów reprezentujących kultury en-US i fr-FR podczas konwertowania elementów w tablicy ciągów liczbowych na Single wartości.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      string[] values = { "123456789", "12345.6789", "12 345,6789",
                          "123,456.789", "123 456,789", "123,456,789.0123",
                          "123 456 789,0123", "1.235e12", "1.03221e-05",
                          Double.MaxValue.ToString() };
      CultureInfo[] cultures = { new CultureInfo("en-US"),
                                 new CultureInfo("fr-FR") };

      foreach (CultureInfo culture in cultures)
      {
         Console.WriteLine("String -> Single Conversion Using the {0} Culture",
                           culture.Name);
         foreach (string value in values)
         {
            Console.Write("{0,22}  ->  ", value);
            try {
               Console.WriteLine(Convert.ToSingle(value, culture));
            }
            catch (FormatException) {
               Console.WriteLine("FormatException");
            }
            catch (OverflowException) {
               Console.WriteLine("OverflowException");
            }
         }
         Console.WriteLine();
      }
   }
}
// The example displays the following output:
//    String -> Single Conversion Using the en-US Culture
//                 123456789  ->  1.234568E+08
//                12345.6789  ->  12345.68
//               12 345,6789  ->  FormatException
//               123,456.789  ->  123456.8
//               123 456,789  ->  FormatException
//          123,456,789.0123  ->  1.234568E+08
//          123 456 789,0123  ->  FormatException
//                  1.235e12  ->  1.235E+12
//               1.03221e-05  ->  1.03221E-05
//     1.79769313486232E+308  ->  Overflow
//
//    String -> Single Conversion Using the fr-FR Culture
//                 123456789  ->  1.234568E+08
//                12345.6789  ->  FormatException
//               12 345,6789  ->  12345.68
//               123,456.789  ->  FormatException
//               123 456,789  ->  123456.8
//          123,456,789.0123  ->  FormatException
//          123 456 789,0123  ->  1.234568E+08
//                  1.235e12  ->  FormatException
//               1.03221e-05  ->  FormatException
//     1.79769313486232E+308  ->  FormatException
open System
open System.Globalization

let values =
    [| "123456789"; "12345.6789"; "12 345,6789"
       "123,456.789"; "123 456,789"; "123,456,789.0123"
       "123 456 789,0123"; "1.235e12"; "1.03221e-05"
       string Double.MaxValue |]
let cultures =
    [| CultureInfo "en-US"; CultureInfo "fr-FR" |]

for culture in cultures do
    printfn $"String -> Single Conversion Using the {culture.Name} Culture"
    for value in values do
        printf $"{value,22}  ->  "
        try
            printfn $"{Convert.ToSingle(value, culture)}"
        with
        | :? FormatException ->
            printfn "FormatException"
        | :? OverflowException ->
            printfn "OverflowException"
    printfn ""
// The example displays the following output:
//    String -> Single Conversion Using the en-US Culture
//                 123456789  ->  1.234568E+08
//                12345.6789  ->  12345.68
//               12 345,6789  ->  FormatException
//               123,456.789  ->  123456.8
//               123 456,789  ->  FormatException
//          123,456,789.0123  ->  1.234568E+08
//          123 456 789,0123  ->  FormatException
//                  1.235e12  ->  1.235E+12
//               1.03221e-05  ->  1.03221E-05
//     1.79769313486232E+308  ->  Overflow
//
//    String -> Single Conversion Using the fr-FR Culture
//                 123456789  ->  1.234568E+08
//                12345.6789  ->  FormatException
//               12 345,6789  ->  12345.68
//               123,456.789  ->  FormatException
//               123 456,789  ->  123456.8
//          123,456,789.0123  ->  FormatException
//          123 456 789,0123  ->  1.234568E+08
//                  1.235e12  ->  FormatException
//               1.03221e-05  ->  FormatException
//     1.79769313486232E+308  ->  FormatException
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim values() As String = { "123456789", "12345.6789", "12 345,6789", _
                                 "123,456.789", "123 456,789", "123,456,789.0123", _
                                 "123 456 789,0123", "1.235e12", "1.03221e-05", _
                                 Double.MaxValue.ToString() }
      Dim cultures() As CultureInfo = { New CultureInfo("en-US"), _
                                        New CultureInfo("fr-FR") } 

      For Each culture As CultureInfo In cultures
         Console.WriteLine("String -> Single Conversion Using the {0} Culture", _
                           culture.Name)
         For Each value As String In values
            Console.Write("{0,22}  ->  ", value)
            Try
               Console.WriteLine(Convert.ToSingle(value, culture))
            Catch e As FormatException
               Console.WriteLine("FormatException")
            CAtch e As OverflowException
               Console.WriteLine("Overflow")
            End Try   
         Next
         Console.WriteLine()
      Next                     
   End Sub
End Module
' The example displays the following output:
'    String -> Single Conversion Using the en-US Culture
'                 123456789  ->  1.234568E+08
'                12345.6789  ->  12345.68
'               12 345,6789  ->  FormatException
'               123,456.789  ->  123456.8
'               123 456,789  ->  FormatException
'          123,456,789.0123  ->  1.234568E+08
'          123 456 789,0123  ->  FormatException
'                  1.235e12  ->  1.235E+12
'               1.03221e-05  ->  1.03221E-05
'     1.79769313486232E+308  ->  Overflow
'    
'    String -> Single Conversion Using the fr-FR Culture
'                 123456789  ->  1.234568E+08
'                12345.6789  ->  FormatException
'               12 345,6789  ->  12345.68
'               123,456.789  ->  FormatException
'               123 456,789  ->  123456.8
'          123,456,789.0123  ->  FormatException
'          123 456 789,0123  ->  1.234568E+08
'                  1.235e12  ->  FormatException
'               1.03221e-05  ->  FormatException
'     1.79769313486232E+308  ->  FormatException

Uwagi

Zwracana wartość jest wynikiem wywołania metody w metodzie Single.Parse .value

provider jest wystąpieniem IFormatProvider , które uzyskuje NumberFormatInfo obiekt. Obiekt NumberFormatInfo zawiera informacje specyficzne dla kultury dotyczące formatu value. Jeśli provider wartość to null, NumberFormatInfo używana jest wartość dla bieżącej kultury.

Jeśli nie chcesz obsługiwać wyjątku, jeśli konwersja nie powiedzie się, możesz wywołać metodę Single.TryParse . Zwraca wartość wskazującą Boolean , czy konwersja powiodła się, czy nie powiodła się.

Dotyczy

ToSingle(SByte)

Źródło:
Convert.cs
Źródło:
Convert.cs
Źródło:
Convert.cs

Ważne

Ten interfejs API nie jest zgodny ze specyfikacją CLS.

Konwertuje wartość określonej 8-bitowej liczby całkowitej ze znakiem na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

public:
 static float ToSingle(System::SByte value);
[System.CLSCompliant(false)]
public static float ToSingle (sbyte value);
[<System.CLSCompliant(false)>]
static member ToSingle : sbyte -> single
Public Shared Function ToSingle (value As SByte) As Single

Parametry

value
SByte

Liczba całkowita ze znakiem 8-bitowym, która ma być konwertowana.

Zwraca

8-bitowa liczba całkowita ze znakiem, która jest równoważna value.

Atrybuty

Przykłady

Poniższy przykład konwertuje każdy element w podpisanej tablicy bajtów na Single wartość.

sbyte[] numbers = { SByte.MinValue, -23, 0, 17, SByte.MaxValue };
float result;

foreach (sbyte number in numbers)
{
   result = Convert.ToSingle(number);
   Console.WriteLine("Converted the {0} value '{1}' to the {2} value {3}.",
                     number.GetType().Name, number,
                     result.GetType().Name, result);
}
// The example displays the following output:
//    Converted the SByte value '-128' to the Single value -128.
//    Converted the SByte value '-23' to the Single value -23.
//    Converted the SByte value '0' to the Single value 0.
//    Converted the SByte value '17' to the Single value 17.
//    Converted the SByte value '127' to the Single value 127.
let numbers = [| SByte.MinValue; -23y; 0y; 17y; SByte.MaxValue |]

for number in numbers do
    let result = Convert.ToSingle number
    printfn $"Converted the {number.GetType().Name} value {number} to the {result.GetType().Name} value {result}."
// The example displays the following output:
//    Converted the SByte value '-128' to the Single value -128.
//    Converted the SByte value '-23' to the Single value -23.
//    Converted the SByte value '0' to the Single value 0.
//    Converted the SByte value '17' to the Single value 17.
//    Converted the SByte value '127' to the Single value 127.
Dim numbers() As SByte = { SByte.MinValue, -23, 0, 17, SByte.MaxValue }
Dim result As Single

For Each number As SByte In numbers
   result = Convert.ToSingle(number)
      Console.WriteLine("Converted the {0} value '{1}' to the {2} value {3}.", _
                        number.GetType().Name, number, _
                        result.GetType().Name, result)
Next
' The example displays the following output:
'    Converted the SByte value '-128' to the Single value -128.
'    Converted the SByte value '-23' to the Single value -23.
'    Converted the SByte value '0' to the Single value 0.
'    Converted the SByte value '17' to the Single value 17.
'    Converted the SByte value '127' to the Single value 127.

Dotyczy

ToSingle(Object, IFormatProvider)

Źródło:
Convert.cs
Źródło:
Convert.cs
Źródło:
Convert.cs

Konwertuje wartość określonego obiektu na liczbę zmiennoprzecinkową o pojedynczej precyzji przy użyciu określonych informacji o formatowaniu specyficznym dla kultury.

public:
 static float ToSingle(System::Object ^ value, IFormatProvider ^ provider);
public static float ToSingle (object value, IFormatProvider provider);
public static float ToSingle (object? value, IFormatProvider? provider);
static member ToSingle : obj * IFormatProvider -> single
Public Shared Function ToSingle (value As Object, provider As IFormatProvider) As Single

Parametry

value
Object

Obiekt, który implementuje IConvertible interfejs.

provider
IFormatProvider

Obiekt, który dostarcza informacje o formatowaniu specyficzne dla kultury.

Zwraca

Liczba zmiennoprzecinkowa o pojedynczej precyzji, która jest równoważna liczbie value, lub zero, jeśli value ma wartość null.

Wyjątki

value nie jest w odpowiednim formacie.

value nie implementuje IConvertible.

value reprezentuje liczbę mniejszą niż Single.MinValue lub większą niż Single.MaxValue.

Przykłady

W poniższym przykładzie zdefiniowano klasę Temperature , która implementuje IConvertible interfejs. Jej implementacja IConvertible.ToSingle metody zwraca wartość wewnętrzną zmiennej prywatnej Single , która reprezentuje temperaturę.

using System;
using System.Globalization;

public class Temperature : IConvertible
{
   private float m_Temp;

   public Temperature(float temperature)
   {
      this.m_Temp = temperature;
   }

   public float Celsius
   {
      get { return this.m_Temp; }
   }

   public float Kelvin
   {
      get { return this.m_Temp + 273.15f; }
   }

   public float Fahrenheit
   {
      get { return (float) Math.Round(this.m_Temp * 9 / 5 + 32, 2); }
   }

   public override string ToString()
   {
      return m_Temp.ToString("N2") + " °C";
   }

   // IConvertible implementations.
   public TypeCode GetTypeCode()
   {
      return TypeCode.Object;
   }

   public bool ToBoolean(IFormatProvider provider)
   {
      if (m_Temp == 0)
         return false;
      else
         return true;
   }

   public byte ToByte(IFormatProvider provider)
   {
      if (m_Temp < Byte.MinValue || m_Temp > Byte.MaxValue)
         throw new OverflowException(String.Format("{0} is out of range of the Byte type.",
                                                   this.m_Temp));
      else
         return Convert.ToByte(this.m_Temp);
   }

   public char ToChar(IFormatProvider provider)
   {
      throw new InvalidCastException("Temperature to Char conversion is not supported.");
   }

   public DateTime ToDateTime(IFormatProvider provider)
   {
      throw new InvalidCastException("Temperature to DateTime conversion is not supported.");
   }

   public decimal ToDecimal(IFormatProvider provider)
   {
      return Convert.ToDecimal(this.m_Temp);
   }

   public double ToDouble(IFormatProvider provider)
   {
      return Convert.ToDouble(this.m_Temp);
   }

   public short ToInt16(IFormatProvider provider)
   {
      if (this.m_Temp < Int16.MinValue || this.m_Temp > Int16.MaxValue)
         throw new OverflowException(String.Format("{0} is out of range of the Int16 type.",
                                                   this.m_Temp));
      else
         return Convert.ToInt16(this.m_Temp);
   }

   public int ToInt32(IFormatProvider provider)
      {
      if (this.m_Temp < Int32.MinValue || this.m_Temp > Int32.MaxValue)
         throw new OverflowException(String.Format("{0} is out of range of the Int32 type.",
                                                   this.m_Temp));
      else
         return Convert.ToInt32(this.m_Temp);
   }

   public long ToInt64(IFormatProvider provider)
   {
      if (this.m_Temp < Int64.MinValue || this.m_Temp > Int64.MaxValue)
         throw new OverflowException(String.Format("{0} is out of range of the Int64 type.",
                                                   this.m_Temp));
      else
         return Convert.ToInt64(this.m_Temp);
   }

   public sbyte ToSByte(IFormatProvider provider)
   {
      if (this.m_Temp < SByte.MinValue || this.m_Temp > SByte.MaxValue)
         throw new OverflowException(String.Format("{0} is out of range of the SByte type.",
                                                   this.m_Temp));
      else
         return Convert.ToSByte(this.m_Temp);
   }

   public float ToSingle(IFormatProvider provider)
   {
      return this.m_Temp;
   }

   public string ToString(IFormatProvider provider)
   {
      return m_Temp.ToString("N2", provider) + " °C";
   }

   public object ToType(Type conversionType, IFormatProvider provider)
   {
      switch (Type.GetTypeCode(conversionType))
      {
         case TypeCode.Boolean:
            return this.ToBoolean(null);
         case TypeCode.Byte:
            return this.ToByte(null);
         case TypeCode.Char:
            return this.ToChar(null);
         case TypeCode.DateTime:
            return this.ToDateTime(null);
         case TypeCode.Decimal:
            return this.ToDecimal(null);
         case TypeCode.Double:
            return this.ToDouble(null);
         case TypeCode.Int16:
            return this.ToInt16(null);
         case TypeCode.Int32:
            return this.ToInt32(null);
         case TypeCode.Int64:
            return this.ToInt64(null);
         case TypeCode.Object:
            if (typeof(Temperature).Equals(conversionType))
               return this;
            else
               throw new InvalidCastException(String.Format("Conversion to a {0} is not supported.",
                                                            conversionType.Name));
         case TypeCode.SByte:
            return this.ToSByte(null);
         case TypeCode.Single:
            return this.ToSingle(null);
         case TypeCode.String:
            return this.ToString(provider);
         case TypeCode.UInt16:
            return this.ToUInt16(null);
         case TypeCode.UInt32:
            return this.ToUInt32(null);
         case TypeCode.UInt64:
            return this.ToUInt64(null);
         default:
            throw new InvalidCastException(String.Format("Conversion to {0} is not supported.", conversionType.Name));
      }
   }

   public ushort ToUInt16(IFormatProvider provider)
   {
      if (this.m_Temp < UInt16.MinValue || this.m_Temp > UInt16.MaxValue)
         throw new OverflowException(String.Format("{0} is out of range of the UInt16 type.",
                                                   this.m_Temp));
      else
         return Convert.ToUInt16(this.m_Temp);
   }

   public uint ToUInt32(IFormatProvider provider)
   {
      if (this.m_Temp < UInt32.MinValue || this.m_Temp > UInt32.MaxValue)
         throw new OverflowException(String.Format("{0} is out of range of the UInt32 type.",
                                                   this.m_Temp));
      else
         return Convert.ToUInt32(this.m_Temp);
   }

   public ulong ToUInt64(IFormatProvider provider)
   {
      if (this.m_Temp < UInt64.MinValue || this.m_Temp > UInt64.MaxValue)
         throw new OverflowException(String.Format("{0} is out of range of the UInt64 type.",
                                                   this.m_Temp));
      else
         return Convert.ToUInt64(this.m_Temp);
   }
}
open System

type Temperature(temperature: float32) =
    member _.Celsius =
        temperature

    member _.Kelvin =
        temperature + 273.15f

    member _.Fahrenheit =
        MathF.Round(temperature * 9f / 5f + 32f, 2)

    override _.ToString() =
        $"{temperature:N2} °C"

    // IConvertible implementations.
    interface IConvertible with

        member _.GetTypeCode() =
            TypeCode.Object

        member _.ToBoolean(provider: IFormatProvider) =
            temperature <> 0f

        member _.ToByte(provider: IFormatProvider) =
            if temperature < float32 Byte.MinValue || temperature > float32 Byte.MaxValue then
                raise (OverflowException $"{temperature} is out of range of the Byte type.")
            else
                Convert.ToByte temperature

        member _.ToChar(provider: IFormatProvider) =
            raise (InvalidCastException "Temperature to Char conversion is not supported.")

        member _.ToDateTime(provider: IFormatProvider) =
            raise (InvalidCastException "Temperature to DateTime conversion is not supported.")

        member _.ToDecimal(provider: IFormatProvider) =
            Convert.ToDecimal temperature

        member _.ToDouble(provider: IFormatProvider) =
            Convert.ToDouble temperature

        member _.ToInt16(provider: IFormatProvider) =
            if temperature < float32 Int16.MinValue || temperature > float32 Int16.MaxValue then
                raise (OverflowException $"{temperature} is out of range of the Int16 type.")
            else
                Convert.ToInt16 temperature

        member _.ToInt32(provider: IFormatProvider) =
            if temperature < float32 Int32.MinValue || temperature > float32 Int32.MaxValue then
                raise (OverflowException $"{temperature} is out of range of the Int32 type.")
            else
                Convert.ToInt32 temperature

        member _.ToInt64(provider: IFormatProvider) =
            if float32 temperature < float32 Int64.MinValue || temperature > float32 Int64.MaxValue then
                raise (OverflowException $"{temperature} is out of range of the Int64 type.")
            else
                Convert.ToInt64 temperature

        member _.ToSByte(provider: IFormatProvider) =
            if temperature < float32 SByte.MinValue || temperature > float32 SByte.MaxValue then
                raise (OverflowException $"{temperature} is out of range of the SByte type.")
            else
                Convert.ToSByte temperature

        member _.ToSingle(provider: IFormatProvider) =
            temperature

        override _.ToString(provider: IFormatProvider) =
            temperature.ToString("N2", provider) + " °C"

        member this.ToType(conversionType: Type, provider: IFormatProvider) =
            let this = this :> IConvertible
            match Type.GetTypeCode conversionType with
            | TypeCode.Boolean ->
                this.ToBoolean null
            | TypeCode.Byte ->
                this.ToByte null
            | TypeCode.Char ->
                this.ToChar null
            | TypeCode.DateTime ->
                this.ToDateTime null
            | TypeCode.Decimal ->
                this.ToDecimal null
            | TypeCode.Double ->
                this.ToDouble null
            | TypeCode.Int16 ->
                this.ToInt16 null
            | TypeCode.Int32 ->
                this.ToInt32 null
            | TypeCode.Int64 ->
                this.ToInt64 null
            | TypeCode.Object ->
                if typeof<Temperature>.Equals conversionType then
                    this
                else
                    raise (InvalidCastException $"Conversion to a {conversionType.Name} is not supported.")
            | TypeCode.SByte ->
                this.ToSByte null
            | TypeCode.Single ->
                this.ToSingle null
            | TypeCode.String ->
                this.ToString provider
            | TypeCode.UInt16 ->
                this.ToUInt16 null
            | TypeCode.UInt32 ->
                this.ToUInt32 null
            | TypeCode.UInt64 ->
                this.ToUInt64 null
            | _ ->
                    raise (InvalidCastException $"Conversion to {conversionType.Name} is not supported.")

        member _.ToUInt16(provider: IFormatProvider) =
            if temperature < float32 UInt16.MinValue || temperature > float32 UInt16.MaxValue then
                raise (OverflowException $"{temperature} is out of range of the UInt16 type.")
            else
                Convert.ToUInt16 temperature

        member _.ToUInt32(provider: IFormatProvider) =
            if temperature < float32 UInt32.MinValue || temperature > float32 UInt32.MaxValue then
                raise (OverflowException $"{temperature} is out of range of the UInt32 type.")
            else
                Convert.ToUInt32 temperature

        member _.ToUInt64(provider: IFormatProvider) =
            if temperature < float32 UInt64.MinValue || temperature > float32 UInt64.MaxValue then
                raise (OverflowException $"{temperature} is out of range of the UInt64 type.")
            else
                Convert.ToUInt64 temperature
Imports System.Globalization

Public Class Temperature : Implements IConvertible
   Private m_Temp As Single

   Public Sub New(temperature As Single)
      Me.m_Temp = temperature
   End Sub
   
   Public ReadOnly Property Celsius() As Single
      Get
         Return Me.m_Temp
      End Get   
   End Property
   
   Public ReadOnly Property Kelvin() As Single
      Get
         Return Me.m_Temp + 273.15F
      End Get
   End Property
   
   Public ReadOnly Property Fahrenheit() As Single
      Get
         Return CSng(Math.Round(Me.m_Temp * 9 / 5 + 32, 2))
      End Get      
   End Property
   
   Public Overrides Function ToString() As String
      Return m_Temp.ToString("N2") & " °C"
   End Function

   ' IConvertible implementations.
   Public Function GetTypeCode() As TypeCode _
                   Implements IConvertible.GetTypeCode
      Return TypeCode.Object
   End Function
   
   Public Function ToBoolean(provider As IFormatProvider) As Boolean _
                   Implements IConvertible.ToBoolean
      If m_Temp = 0 Then
         Return False
      Else
         Return True
      End If
   End Function 
   
   Public Function ToByte(provider As IFormatProvider) As Byte _
                   Implements IConvertible.ToByte
      If m_Temp < Byte.MinValue Or m_Temp > Byte.MaxValue Then
         Throw New OverflowException(String.Format("{0} is out of range of the Byte type.", _ 
                                                   Me.m_Temp)) 
      Else
         Return Convert.ToByte(Me.m_Temp)
      End If       
   End Function
   
   Public Function ToChar(provider As IFormatProvider) As Char _
                   Implements IConvertible.ToChar
      Throw New InvalidCastException("Temperature to Char conversion is not supported.")
   End Function 
   
   Public Function ToDateTime(provider As IFormatProvider) As Date _
                   Implements IConvertible.ToDateTime
      Throw New InvalidCastException("Temperature to DateTime conversion is not supported.")
   End Function
   
   Public Function ToDecimal(provider As IFormatProvider) As Decimal _
                   Implements IConvertible.ToDecimal
      Return Convert.ToDecimal(Me.m_Temp)
   End Function
   
   Public Function ToDouble(provider As IFormatProvider) As Double _
                   Implements IConvertible.ToDouble
      Return Convert.ToDouble(Me.m_Temp)
   End Function   
   
   Public Function ToInt16(provider As IFormatProvider) As Int16 _
                   Implements IConvertible.ToInt16
      If Me.m_Temp < Int16.MinValue Or Me.m_Temp > Int16.MaxValue Then
         Throw New OverflowException(String.Format("{0} is out of range of the Int16 type.", _
                                                   Me.m_Temp))
      Else
         Return Convert.ToInt16(Me.m_Temp)   
      End If
   End Function
   
   Public Function ToInt32(provider As IFormatProvider) As Int32 _
                   Implements IConvertible.ToInt32
      If Me.m_Temp < Int32.MinValue Or Me.m_Temp > Int32.MaxValue Then
         Throw New OverflowException(String.Format("{0} is out of range of the Int32 type.", _
                                                   Me.m_Temp))
      Else
         Return Convert.ToInt32(Me.m_Temp)
      End If      
   End Function
   
   Public Function ToInt64(provider As IFormatProvider) As Int64 _
                   Implements IConvertible.ToInt64
      If Me.m_Temp < Int64.MinValue Or Me.m_Temp > Int64.MaxValue Then
         Throw New OverflowException(String.Format("{0} is out of range of the Int64 type.", _
                                                   Me.m_Temp))
      Else
         Return Convert.ToInt64(Me.m_Temp)
      End If      
   End Function
   
   Public Function ToSByte(provider As IFormatProvider) As SByte _
                   Implements IConvertible.ToSByte
      If Me.m_Temp < SByte.MinValue Or Me.m_Temp > SByte.MaxValue Then
         Throw New OverflowException(String.Format("{0} is out of range of the SByte type.", _
                                                   Me.m_Temp))
      Else
         Return Convert.ToSByte(Me.m_Temp)
      End If      
   End Function

   Public Function ToSingle(provider As IFormatProvider) As Single _
                   Implements IConvertible.ToSingle
      Return Me.m_Temp
   End Function

   Public Overloads Function ToString(provider As IFormatProvider) As String _
                   Implements IConvertible.ToString
      Return m_Temp.ToString("N2", provider) & " °C"
   End Function
   
   Public Function ToType(conversionType As Type, provider As IFormatProvider) As Object _
                   Implements IConvertible.ToType
      Select Case Type.GetTypeCode(conversionType)
         Case TypeCode.Boolean 
            Return Me.ToBoolean(Nothing)
         Case TypeCode.Byte
            Return Me.ToByte(Nothing)
         Case TypeCode.Char
            Return Me.ToChar(Nothing)
         Case TypeCode.DateTime
            Return Me.ToDateTime(Nothing)
         Case TypeCode.Decimal
            Return Me.ToDecimal(Nothing)
         Case TypeCode.Double
            Return Me.ToDouble(Nothing)
         Case TypeCode.Int16
            Return Me.ToInt16(Nothing)
         Case TypeCode.Int32
            Return Me.ToInt32(Nothing)
         Case TypeCode.Int64
            Return Me.ToInt64(Nothing)
         Case TypeCode.Object
            If GetType(Temperature).Equals(conversionType) Then
               Return Me
            Else
               Throw New InvalidCastException(String.Format("Conversion to a {0} is not supported.", _
                                                            conversionType.Name))
            End If 
         Case TypeCode.SByte
            Return Me.ToSByte(Nothing)
         Case TypeCode.Single
            Return Me.ToSingle(Nothing)
         Case TypeCode.String
            Return Me.ToString(provider)
         Case TypeCode.UInt16
            Return Me.ToUInt16(Nothing)
         Case TypeCode.UInt32
            Return Me.ToUInt32(Nothing)
         Case TypeCode.UInt64
            Return Me.ToUInt64(Nothing)   
         Case Else
            Throw New InvalidCastException(String.Format("Conversion to {0} is not supported.", conversionType.Name))   
      End Select
   End Function
   
   Public Function ToUInt16(provider As IFormatProvider) As UInt16 _
                   Implements IConvertible.ToUInt16
      If Me.m_Temp < UInt16.MinValue Or Me.m_Temp > UInt16.MaxValue Then
         Throw New OverflowException(String.Format("{0} is out of range of the UInt16 type.", _
                                                   Me.m_Temp))
      Else
         Return Convert.ToUInt16(Me.m_Temp)
      End If   
   End Function

   Public Function ToUInt32(provider As IFormatProvider) As UInt32 _
                   Implements IConvertible.ToUInt32
      If Me.m_Temp < UInt32.MinValue Or Me.m_Temp > UInt32.MaxValue Then
         Throw New OverflowException(String.Format("{0} is out of range of the UInt32 type.", _
                                                   Me.m_Temp))
      Else
         Return Convert.ToUInt32(Me.m_Temp)
      End If   
   End Function
   
   Public Function ToUInt64(provider As IFormatProvider) As UInt64 _
                   Implements IConvertible.ToUInt64
      If Me.m_Temp < UInt64.MinValue Or Me.m_Temp > UInt64.MaxValue Then
         Throw New OverflowException(String.Format("{0} is out of range of the UInt64 type.", _
                                                   Me.m_Temp))
      Else
         Return Convert.ToUInt64(Me.m_temp)
      End If   
   End Function
End Class

W poniższym przykładzie pokazano, jak wywołanie Convert.ToSingle(Object, IFormatProvider) metody z kolei wywołuje implementację IConvertible.ToSingleTemperature klasy.

public class Example
{
   public static void Main()
   {
      Temperature cold = new Temperature(-40);
      Temperature freezing = new Temperature(0);
      Temperature boiling = new Temperature(100);

      Console.WriteLine(Convert.ToInt32(cold, null));
      Console.WriteLine(Convert.ToInt32(freezing, null));
      Console.WriteLine(Convert.ToDouble(boiling, null));
   }
}
// The example dosplays the following output:
//       -40
//       0
//       100
let cold = Temperature -40f
let freezing = Temperature 0f
let boiling = Temperature 100f

printfn $"{Convert.ToInt32(cold, null)}"
printfn $"{Convert.ToInt32(freezing, null)}"
printfn $"{Convert.ToDouble(boiling, null)}"
// The example dosplays the following output:
//       -40
//       0
//       100
Module Example
   Public Sub Main()
      Dim cold As New Temperature(-40)
      Dim freezing As New Temperature(0)
      Dim boiling As New Temperature(100)
      
      Console.WriteLine(Convert.ToInt32(cold, Nothing))
      Console.WriteLine(Convert.ToInt32(freezing, Nothing))
      Console.WriteLine(Convert.ToDouble(boiling, Nothing))
   End Sub
End Module
' The example displays the following output:
'       -40
'       0
'       100

Uwagi

Zwracana wartość jest wynikiem wywołania IConvertible.ToSingle metody bazowego typu value.

provider umożliwia użytkownikowi określenie informacji konwersji specyficznych dla kultury dotyczących zawartości elementu value. Jeśli na przykład value element reprezentuje String liczbę, provider może dostarczyć informacje specyficzne dla kultury dotyczące notacji użytej do reprezentowania tej liczby.

Typy podstawowe ignorują provider. Jednak parametr może być używany, jeśli value jest typem zdefiniowanym przez użytkownika, który implementuje IConvertible interfejs.

Dotyczy

ToSingle(UInt64)

Źródło:
Convert.cs
Źródło:
Convert.cs
Źródło:
Convert.cs

Ważne

Ten interfejs API nie jest zgodny ze specyfikacją CLS.

Konwertuje wartość określonej 64-bitowej liczby całkowitej bez znaku na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

public:
 static float ToSingle(System::UInt64 value);
[System.CLSCompliant(false)]
public static float ToSingle (ulong value);
[<System.CLSCompliant(false)>]
static member ToSingle : uint64 -> single
Public Shared Function ToSingle (value As ULong) As Single

Parametry

value
UInt64

64-bitowa liczba całkowita bez znaku do konwersji.

Zwraca

Liczba zmiennoprzecinkowa o pojedynczej precyzji, która jest równoważna value.

Atrybuty

Przykłady

Poniższy przykład konwertuje każdy element w tablicy niepodpisanych długich liczb całkowitych na Single wartość.

ulong[] numbers = { UInt64.MinValue, 121, 12345, UInt64.MaxValue };
float result;

foreach (ulong number in numbers)
{
   result = Convert.ToSingle(number);
   Console.WriteLine("Converted the {0} value '{1}' to the {2} value {3}.",
                     number.GetType().Name, number,
                     result.GetType().Name, result);
}
// The example displays the following output:
//    Converted the UInt64 value '0' to the Single value 0.
//    Converted the UInt64 value '121' to the Single value 121.
//    Converted the UInt64 value '12345' to the Single value 12345.
//    Converted the UInt64 value '18446744073709551615' to the Single value 1.844674E+19.
let numbers = [| UInt64.MinValue; 121uL; 12345uL; UInt64.MaxValue |]

for number in numbers do
    let result = Convert.ToSingle number
    printfn $"Converted the {number.GetType().Name} value {number} to the {result.GetType().Name} value {result}."
// The example displays the following output:
//    Converted the UInt64 value '0' to the Single value 0.
//    Converted the UInt64 value '121' to the Single value 121.
//    Converted the UInt64 value '12345' to the Single value 12345.
//    Converted the UInt64 value '18446744073709551615' to the Single value 1.844674E+19.
Dim numbers() As ULong = { UInt64.MinValue, 121, 12345, UInt64.MaxValue }
Dim result As Single

For Each number As ULong In numbers
   result = Convert.ToSingle(number)
      Console.WriteLine("Converted the {0} value '{1}' to the {2} value {3}.", _
                        number.GetType().Name, number, _
                        result.GetType().Name, result)
Next
' The example displays the following output:
'    Converted the UInt64 value '0' to the Single value 0.
'    Converted the UInt64 value '121' to the Single value 121.
'    Converted the UInt64 value '12345' to the Single value 12345.
'    Converted the UInt64 value '18446744073709551615' to the Single value 1.844674E+19.

Dotyczy

ToSingle(UInt32)

Źródło:
Convert.cs
Źródło:
Convert.cs
Źródło:
Convert.cs

Ważne

Ten interfejs API nie jest zgodny ze specyfikacją CLS.

Konwertuje wartość określonej 32-bitowej liczby całkowitej bez znaku na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

public:
 static float ToSingle(System::UInt32 value);
[System.CLSCompliant(false)]
public static float ToSingle (uint value);
[<System.CLSCompliant(false)>]
static member ToSingle : uint32 -> single
Public Shared Function ToSingle (value As UInteger) As Single

Parametry

value
UInt32

32-bitowa liczba całkowita bez znaku do konwersji.

Zwraca

Liczba zmiennoprzecinkowa o pojedynczej precyzji, która jest równoważna value.

Atrybuty

Przykłady

Poniższy przykład konwertuje każdy element w tablicy niepodpisanych liczb całkowitych na Single wartość.

uint[] numbers = { UInt32.MinValue, 121, 12345, UInt32.MaxValue };
float result;

foreach (uint number in numbers)
{
   result = Convert.ToSingle(number);
   Console.WriteLine("Converted the {0} value '{1}' to the {2} value {3}.",
                     number.GetType().Name, number,
                     result.GetType().Name, result);
}
// The example displays the following output:
//    Converted the UInt32 value '0' to the Single value 0.
//    Converted the UInt32 value '121' to the Single value 121.
//    Converted the UInt32 value '12345' to the Single value 12345.
//    Converted the UInt32 value '4294967295' to the Single value 4.294967E+09.
let numbers = [| UInt32.MinValue; 121u; 12345u; UInt32.MaxValue |]

for number in numbers do
    let result = Convert.ToSingle number
    printfn $"Converted the {number.GetType().Name} value {number} to the {result.GetType().Name} value {result}."
// The example displays the following output:
//    Converted the UInt32 value '0' to the Single value 0.
//    Converted the UInt32 value '121' to the Single value 121.
//    Converted the UInt32 value '12345' to the Single value 12345.
//    Converted the UInt32 value '4294967295' to the Single value 4.294967E+09.
   Dim numbers() As UInteger = { UInt32.MinValue, 121, 12345, UInt32.MaxValue }
   Dim result As Single

   For Each number As UInteger In numbers
      result = Convert.ToSingle(number)
         Console.WriteLine("Converted the {0} value '{1}' to the {2} value {3}.", _
                           number.GetType().Name, number, _
                           result.GetType().Name, result)
   Next
   ' The example displays the following output:
'    Converted the UInt32 value '0' to the Single value 0.
'    Converted the UInt32 value '121' to the Single value 121.
'    Converted the UInt32 value '12345' to the Single value 12345.
'    Converted the UInt32 value '4294967295' to the Single value 4.294967E+09.

Dotyczy

ToSingle(String)

Źródło:
Convert.cs
Źródło:
Convert.cs
Źródło:
Convert.cs

Konwertuje określoną reprezentację ciągu liczby na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

public:
 static float ToSingle(System::String ^ value);
public static float ToSingle (string value);
public static float ToSingle (string? value);
static member ToSingle : string -> single
Public Shared Function ToSingle (value As String) As Single

Parametry

value
String

Ciąg zawierający liczbę, którą należy przekształcić.

Zwraca

Liczba zmiennoprzecinkowa o pojedynczej precyzji, która jest równoważna liczbie w valueelemencie , lub 0 (zero), jeśli value ma wartość null.

Wyjątki

value nie jest liczbą w prawidłowym formacie.

value reprezentuje liczbę mniejszą niż Single.MinValue lub większą niż Single.MaxValue.

Przykłady

Poniższy przykład próbuje przekonwertować każdy element w tablicy ciągów liczbowych na Single wartość.

string[] values= { "-1,035.77219", "1AFF", "1e-35", "1.63f",
                   "1,635,592,999,999,999,999,999,999", "-17.455",
                   "190.34001", "1.29e325"};
float result;

foreach (string value in values)
{
   try {
      result = Convert.ToSingle(value);
      Console.WriteLine("Converted the {0} value '{1}' to the {2} value {3}.",
                        value.GetType().Name, value,
                        result.GetType().Name, result);
   }
   catch (FormatException) {
      Console.WriteLine("Unable to convert '{0}' to a Single.", value);
   }
   catch (OverflowException) {
      Console.WriteLine("'{0}' is outside the range of a Single.", value);
   }
}
// The example displays the following output:
//    Converted the String value '-1,035.77219' to the Single value -1035.772.
//    Unable to convert '1AFF' to a Single.
//    Converted the String value '1e-35' to the Single value 1E-35.
//    Unable to convert '1.63f' to a Single.
//    Converted the String value '1,635,592,999,999,999,999,999,999' to the Single value 1.635593E+24.
//    Converted the String value '-17.455' to the Single value -17.455.
//    Converted the String value '190.34001' to the Single value 190.34.
//    1.29e325' is outside the range of a Single.
let values =
    [| "-1,035.77219"; "1AFF"; "1e-35"; "1.63f"; "1,635,592,999,999,999,999,999,999"
       "-17.455"; "190.34001"; "1.29e325" |]

for value in values do
    try
        let result = Convert.ToSingle value
        printfn $"Converted the {value.GetType().Name} value {value} to the {result.GetType().Name} value {result}."
    with
    | :? FormatException ->
        printfn $"Unable to convert '{value}' to a Single."
    | :? OverflowException ->
        printfn $"'{value}' is outside the range of a Single."
// The example displays the following output:
//    Converted the String value '-1,035.77219' to the Single value -1035.772.
//    Unable to convert '1AFF' to a Single.
//    Converted the String value '1e-35' to the Single value 1E-35.
//    Unable to convert '1.63f' to a Single.
//    Converted the String value '1,635,592,999,999,999,999,999,999' to the Single value 1.635593E+24.
//    Converted the String value '-17.455' to the Single value -17.455.
//    Converted the String value '190.34001' to the Single value 190.34.
//    1.29e325' is outside the range of a Single.
Dim values() As String = { "-1,035.77219", "1AFF", "1e-35", "1.63f",
                           "1,635,592,999,999,999,999,999,999", "-17.455",
                           "190.34001", "1.29e325"}
Dim result As Single

For Each value As String In values
   Try
      result = Convert.ToSingle(value)
      Console.WriteLine("Converted the {0} value '{1}' to the {2} value {3}.",
                        value.GetType().Name, value, _
                        result.GetType().Name, result)
   Catch e As FormatException
      Console.WriteLine("Unable to convert '{0}' to a Single.", value)
   Catch e As OverflowException
      Console.WriteLine("'{0}' is outside the range of a Single.", value)
   End Try
Next
' The example displays the following output:
'    Converted the String value '-1,035.77219' to the Single value -1035.772.
'    Unable to convert '1AFF' to a Single.
'    Converted the String value '1e-35' to the Single value 1E-35.
'    Unable to convert '1.63f' to a Single.
'    Converted the String value '1,635,592,999,999,999,999,999,999' to the Single value 1.635593E+24.
'    Converted the String value '-17.455' to the Single value -17.455.
'    Converted the String value '190.34001' to the Single value 190.34.
'    '1.29e325' is outside the range of a Single.

Uwagi

ToSingle(String) Użycie metody jest równoważne przekazywaniu valueSingle.Parse(String) do metody . value element jest interpretowany przy użyciu konwencji formatowania bieżącej kultury.

Jeśli nie chcesz obsługiwać wyjątku, jeśli konwersja nie powiedzie się, możesz wywołać metodę Single.TryParse . Zwraca wartość wskazującą Boolean , czy konwersja powiodła się, czy nie powiodła się.

Dotyczy

ToSingle(Single)

Źródło:
Convert.cs
Źródło:
Convert.cs
Źródło:
Convert.cs

Zwraca określoną liczbę zmiennoprzecinkową o pojedynczej precyzji; nie jest wykonywana żadna rzeczywista konwersja.

public:
 static float ToSingle(float value);
public static float ToSingle (float value);
static member ToSingle : single -> single
Public Shared Function ToSingle (value As Single) As Single

Parametry

value
Single

Liczba zmiennoprzecinkowa o pojedynczej precyzji do zwrócenia.

Zwraca

value jest zwracany bez zmian.

Zobacz też

Dotyczy

ToSingle(Object)

Źródło:
Convert.cs
Źródło:
Convert.cs
Źródło:
Convert.cs

Konwertuje wartość określonego obiektu na liczbę zmiennoprzecinkową o pojedynczej precyzji.

public:
 static float ToSingle(System::Object ^ value);
public static float ToSingle (object value);
public static float ToSingle (object? value);
static member ToSingle : obj -> single
Public Shared Function ToSingle (value As Object) As Single

Parametry

value
Object

Obiekt implementujący IConvertible interfejs lub null.

Zwraca

Liczba zmiennoprzecinkowa o pojedynczej precyzji, która jest równoważna valuewartościom , lub zero, jeśli value jest to null.

Wyjątki

value nie jest w odpowiednim formacie.

value nie implementuje interfejsu IConvertible .

-lub-

Konwersja nie jest obsługiwana.

value reprezentuje liczbę mniejszą niż Single.MinValue lub większą niż Single.MaxValue.

Przykłady

Poniższy przykład próbuje przekonwertować każdy element w tablicy obiektów na Single wartość.

object[] values = { true, 'a', 123, 1.764e32, "9.78", "1e-02",
                    1.67e03, "A100", "1,033.67", DateTime.Now,
                    Decimal.MaxValue };
float result;

foreach (object value in values)
{
   try {
      result = Convert.ToSingle(value);
      Console.WriteLine("Converted the {0} value '{1}' to the {2} value {3}.",
                        value.GetType().Name, value,
                        result.GetType().Name, result);
   }
   catch (FormatException) {
      Console.WriteLine("The {0} value {1} is not recognized as a valid Single value.",
                        value.GetType().Name, value);
   }
   catch (OverflowException) {
      Console.WriteLine("The {0} value {1} is outside the range of the Single type.",
                        value.GetType().Name, value);
   }
   catch (InvalidCastException) {
      Console.WriteLine("Conversion of the {0} value {1} to a Single is not supported.",
                        value.GetType().Name, value);
   }
}
// The example displays the following output:
//    Converted the Boolean value 'True' to the Single value 1.
//    Conversion of the Char value a to a Single is not supported.
//    Converted the Int32 value '123' to the Single value 123.
//    Converted the Double value '1.764E+32' to the Single value 1.764E+32.
//    Converted the String value '9.78' to the Single value 9.78.
//    Converted the String value '1e-02' to the Single value 0.01.
//    Converted the Double value '1670' to the Single value 1670.
//    The String value A100 is not recognized as a valid Single value.
//    Converted the String value '1,033.67' to the Single value 1033.67.
//    Conversion of the DateTime value 11/7/2008 08:02:35 AM to a Single is not supported.
//    Converted the Decimal value '79228162514264337593543950335' to the Single value 7.922816E+28.
let values: obj[] =
    [| true; 'a'; 123; 1.764e32; "9.78"; "1e-02"; 1.67e03; "A100"; "1,033.67"; DateTime.Now; Decimal.MaxValue |]

for value in values do
    try
        let result = Convert.ToSingle value            
        printfn $"Converted the {value.GetType().Name} value {value} to the {result.GetType().Name} value {result}."
    with
    | :? FormatException ->
        printfn $"The {value.GetType().Name} value {value} is not recognized as a valid Single value."
    | :? OverflowException ->
        printfn $"The {value.GetType().Name} value {value} is outside the range of the Single type."
    | :? InvalidCastException ->
        printfn $"Conversion of the {value.GetType().Name} value {value} to a Single is not supported."
// The example displays the following output:
//    Converted the Boolean value 'True' to the Single value 1.
//    Conversion of the Char value a to a Single is not supported.
//    Converted the Int32 value '123' to the Single value 123.
//    Converted the Double value '1.764E+32' to the Single value 1.764E+32.
//    Converted the String value '9.78' to the Single value 9.78.
//    Converted the String value '1e-02' to the Single value 0.01.
//    Converted the Double value '1670' to the Single value 1670.
//    The String value A100 is not recognized as a valid Single value.
//    Converted the String value '1,033.67' to the Single value 1033.67.
//    Conversion of the DateTime value 11/7/2008 08:02:35 AM to a Single is not supported.
//    Converted the Decimal value '79228162514264337593543950335' to the Single value 7.922816E+28.
Dim values() As Object = { True, "a"c, 123, 1.764e32, "9.78", "1e-02", _
                           1.67e03, "A100", "1,033.67", Date.Now, _
                           Decimal.MaxValue }
Dim result As Single

For Each value As Object In values
   Try
      result = Convert.ToSingle(value)
      Console.WriteLine("Converted the {0} value '{1}' to the {2} value {3}.", _
                        value.GetType().Name, value, _
                        result.GetType().Name, result)

   Catch e As FormatException
      Console.WriteLine("The {0} value {1} is not recognized as a valid Single value.", _
                        value.GetType().Name, value)
   Catch e As OverflowException
      Console.WriteLine("The {0} value {1} is outside the range of the Single type.", _
                        value.GetType().Name, value)

   Catch e As InvalidCastException
      Console.WriteLine("Conversion of the {0} value {1} to a Single is not supported.", _
                        value.GetType().Name, value)
   End Try
Next
' The example displays the following output:
'    Converted the Boolean value 'True' to the Single value 1.
'    Conversion of the Char value a to a Single is not supported.
'    Converted the Int32 value '123' to the Single value 123.
'    Converted the Double value '1.764E+32' to the Single value 1.764E+32.
'    Converted the String value '9.78' to the Single value 9.78.
'    Converted the String value '1e-02' to the Single value 0.01.
'    Converted the Double value '1670' to the Single value 1670.
'    The String value A100 is not recognized as a valid Single value.
'    Converted the String value '1,033.67' to the Single value 1033.67.
'    Conversion of the DateTime value 11/7/2008 07:56:24 AM to a Single is not supported.
'    Converted the Decimal value '79228162514264337593543950335' to the Single value 7.922816E+28.

Uwagi

Wartość zwracana jest wynikiem wywołania IConvertible.ToSingle metody bazowego typu value.

Dotyczy

ToSingle(UInt16)

Źródło:
Convert.cs
Źródło:
Convert.cs
Źródło:
Convert.cs

Ważne

Ten interfejs API nie jest zgodny ze specyfikacją CLS.

Konwertuje wartość określonej 16-bitowej liczby całkowitej bez znaku na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

public:
 static float ToSingle(System::UInt16 value);
[System.CLSCompliant(false)]
public static float ToSingle (ushort value);
[<System.CLSCompliant(false)>]
static member ToSingle : uint16 -> single
Public Shared Function ToSingle (value As UShort) As Single

Parametry

value
UInt16

16-bitowa liczba całkowita bez znaku, która ma zostać przekształcona.

Zwraca

Liczba zmiennoprzecinkowa o pojedynczej precyzji, która jest równoważna value.

Atrybuty

Przykłady

Poniższy przykład konwertuje każdy element w tablicy niepodpisanych 16-bitowych liczb całkowitych na Single wartość.

ushort[] numbers = { UInt16.MinValue, 121, 12345, UInt16.MaxValue };
float result;

foreach (ushort number in numbers)
{
   result = Convert.ToSingle(number);
   Console.WriteLine("Converted the {0} value '{1}' to the {2} value {3}.",
                     number.GetType().Name, number,
                     result.GetType().Name, result);
}
// The example displays the following output:
//    Converted the UInt16 value '0' to the Single value 0.
//    Converted the UInt16 value '121' to the Single value 121.
//    Converted the UInt16 value '12345' to the Single value 12345.
//    Converted the UInt16 value '65535' to the Single value 65535.
let numbers = [| UInt16.MinValue; 121us; 12345us; UInt16.MaxValue |]

for number in numbers do
    let result = Convert.ToSingle number
    printfn $"Converted the {number.GetType().Name} value {number} to the {result.GetType().Name} value {result}."
// The example displays the following output:
//    Converted the UInt16 value '0' to the Single value 0.
//    Converted the UInt16 value '121' to the Single value 121.
//    Converted the UInt16 value '12345' to the Single value 12345.
//    Converted the UInt16 value '65535' to the Single value 65535.
Dim numbers() As UShort = { UInt16.MinValue, 121, 12345, UInt16.MaxValue }
Dim result As Single

For Each number As UShort In numbers
   result = Convert.ToSingle(number)
      Console.WriteLine("Converted the {0} value '{1}' to the {2} value {3}.", _
                        number.GetType().Name, number, _
                        result.GetType().Name, result)
Next
' The example displays the following output:
'    Converted the UInt16 value '0' to the Single value 0.
'    Converted the UInt16 value '121' to the Single value 121.
'    Converted the UInt16 value '12345' to the Single value 12345.
'    Converted the UInt16 value '65535' to the Single value 65535.

Dotyczy

ToSingle(Int32)

Źródło:
Convert.cs
Źródło:
Convert.cs
Źródło:
Convert.cs

Konwertuje wartość określonej 32-bitowej liczby całkowitej ze znakiem na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

public:
 static float ToSingle(int value);
public static float ToSingle (int value);
static member ToSingle : int -> single
Public Shared Function ToSingle (value As Integer) As Single

Parametry

value
Int32

Liczba całkowita z podpisem 32-bitowym do przekonwertowania.

Zwraca

Liczba zmiennoprzecinkowa o pojedynczej precyzji, która jest równoważna value.

Przykłady

Poniższy przykład konwertuje każdy element w tablicy całkowitej Single na wartość.

int[] numbers = { Int32.MinValue, -1000, 0, 1000, Int32.MaxValue };
float result;

foreach (int number in numbers)
{
   result = Convert.ToSingle(number);
   Console.WriteLine("Converted the {0} value '{1}' to the {2} value {3}.",
                     number.GetType().Name, number,
                     result.GetType().Name, result);
}
// The example displays the following output:
//    Converted the Int32 value '-2147483648' to the Single value -2.147484E+09.
//    Converted the Int32 value '-1000' to the Single value -1000.
//    Converted the Int32 value '0' to the Single value 0.
//    Converted the Int32 value '1000' to the Single value 1000.
//    Converted the Int32 value '2147483647' to the Single value 2.147484E+09.
let numbers = 
    [| Int32.MinValue; -1000; 0; 1000; Int32.MaxValue |]

for number in numbers do
    let result = Convert.ToSingle number
    printfn $"Converted the {number.GetType().Name} value {number} to the {result.GetType().Name} value {result}."
// The example displays the following output:
//    Converted the Int32 value '-2147483648' to the Single value -2.147484E+09.
//    Converted the Int32 value '-1000' to the Single value -1000.
//    Converted the Int32 value '0' to the Single value 0.
//    Converted the Int32 value '1000' to the Single value 1000.
//    Converted the Int32 value '2147483647' to the Single value 2.147484E+09.
Dim numbers() As Integer = { Int32.MinValue, -1000, 0, 1000, Int32.MaxValue }
Dim result As Single

For Each number As Integer In numbers
   result = Convert.ToSingle(number)
   Console.WriteLine("Converted the {0} value '{1}' to the {2} value {3}.", _
                     number.GetType().Name, number, _
                     result.GetType().Name, result)
Next
' The example displays the following output:
'    Converted the Int32 value '-2147483648' to the Single value -2.147484E+09.
'    Converted the Int32 value '-1000' to the Single value -1000.
'    Converted the Int32 value '0' to the Single value 0.
'    Converted the Int32 value '1000' to the Single value 1000.
'    Converted the Int32 value '2147483647' to the Single value 2.147484E+09.

Dotyczy

ToSingle(Int16)

Źródło:
Convert.cs
Źródło:
Convert.cs
Źródło:
Convert.cs

Konwertuje wartość określonej 16-bitowej liczby całkowitej ze znakiem na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

public:
 static float ToSingle(short value);
public static float ToSingle (short value);
static member ToSingle : int16 -> single
Public Shared Function ToSingle (value As Short) As Single

Parametry

value
Int16

16-bitowa liczba całkowita ze znakiem, która ma zostać przekształcona.

Zwraca

Liczba zmiennoprzecinkowa o pojedynczej precyzji, która jest równoważna value.

Przykłady

Poniższy przykład konwertuje każdy element w tablicy 16-bitowych liczb całkowitych na Single wartość.

short[] numbers = { Int16.MinValue, -1032, 0, 192, Int16.MaxValue };
float result;

foreach (short number in numbers)
{
   result = Convert.ToSingle(number);
   Console.WriteLine("Converted the {0} value '{1}' to the {2} value {3}.",
                     number.GetType().Name, number,
                     result.GetType().Name, result);
}
// The example displays the following output:
//    Converted the Int16 value '-32768' to the Single value -32768.
//    Converted the Int16 value '-1032' to the Single value -1032.
//    Converted the Int16 value '0' to the Single value 0.
//    Converted the Int16 value '192' to the Single value 192.
//    Converted the Int16 value '32767' to the Single value 32767.
let numbers = 
    [| Int16.MinValue; -1032s; 0s; 192s; Int16.MaxValue |]

for number in numbers do
    let result = Convert.ToSingle number
    printfn $"Converted the {number.GetType().Name} value {number} to the {result.GetType().Name} value {result}."
// The example displays the following output:
//    Converted the Int16 value '-32768' to the Single value -32768.
//    Converted the Int16 value '-1032' to the Single value -1032.
//    Converted the Int16 value '0' to the Single value 0.
//    Converted the Int16 value '192' to the Single value 192.
//    Converted the Int16 value '32767' to the Single value 32767.
Dim numbers() As Short = { Int16.MinValue, -1032, 0, 192, Int16.MaxValue }
Dim result As Single

For Each number As Short In numbers
   result = Convert.ToSingle(number)
   Console.WriteLine("Converted the {0} value '{1}' to the {2} value {3}.", _
                     number.GetType().Name, number, _
                     result.GetType().Name, result)
Next
' The example displays the following output:
'    Converted the Int16 value '-32768' to the Single value -32768.
'    Converted the Int16 value '-1032' to the Single value -1032.
'    Converted the Int16 value '0' to the Single value 0.
'    Converted the Int16 value '192' to the Single value 192.
'    Converted the Int16 value '32767' to the Single value 32767.

Dotyczy

ToSingle(Double)

Źródło:
Convert.cs
Źródło:
Convert.cs
Źródło:
Convert.cs

Konwertuje wartość określonej liczby zmiennoprzecinkowej o podwójnej precyzji na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

public:
 static float ToSingle(double value);
public static float ToSingle (double value);
static member ToSingle : double -> single
Public Shared Function ToSingle (value As Double) As Single

Parametry

value
Double

Liczba zmiennoprzecinkowa podwójnej precyzji, która ma zostać przekształcona.

Zwraca

Liczba zmiennoprzecinkowa o pojedynczej precyzji, która jest równoważna value.

value jest zaokrąglany przy użyciu zaokrąglania do najbliższego. Na przykład po zaokrągleniu do dwóch dziesiętnych wartość 2,345 staje się 2,34, a wartość 2,355 staje się 2,36.

Przykłady

Poniższy przykład konwertuje każdy element w tablicy Double wartości na Single wartość.

double[] values = { Double.MinValue, -1.38e10, -1023.299, -12.98,
                    0, 9.113e-16, 103.919, 17834.191, Double.MaxValue };
float result;

foreach (double value in values)
{
   result = Convert.ToSingle(value);
   Console.WriteLine("Converted the {0} value '{1}' to the {2} value {3}.",
                     value.GetType().Name, value,
                     result.GetType().Name, result);
}
// The example displays the following output:
//    Converted the Double value '-1.79769313486232E+308' to the Single value -Infinity.
//    Converted the Double value '-13800000000' to the Single value -1.38E+10.
//    Converted the Double value '-1023.299' to the Single value -1023.299.
//    Converted the Double value '-12.98' to the Single value -12.98.
//    Converted the Double value '0' to the Single value 0.
//   Converted the Double value '9.113E-16' to the Single value 9.113E-16.
//    Converted the Double value '103.919' to the Single value 103.919.
//    Converted the Double value '17834.191' to the Single value 17834.19.
//    Converted the Double value '1.79769313486232E+308' to the Single value Infinity.
let values = 
    [| Double.MinValue; -1.38e10; -1023.299; -12.98; 0; 9.113e-16; 103.919; 17834.191; Double.MaxValue |]

for value in values do
    let result = Convert.ToSingle value
    printfn $"Converted the {value.GetType().Name} value {value} to the {result.GetType().Name} value {result}."
// The example displays the following output:
//    Converted the Double value '-1.79769313486232E+308' to the Single value -Infinity.
//    Converted the Double value '-13800000000' to the Single value -1.38E+10.
//    Converted the Double value '-1023.299' to the Single value -1023.299.
//    Converted the Double value '-12.98' to the Single value -12.98.
//    Converted the Double value '0' to the Single value 0.
//   Converted the Double value '9.113E-16' to the Single value 9.113E-16.
//    Converted the Double value '103.919' to the Single value 103.919.
//    Converted the Double value '17834.191' to the Single value 17834.19.
//    Converted the Double value '1.79769313486232E+308' to the Single value Infinity.
Dim values() As Double = { Double.MinValue, -1.38e10, -1023.299, -12.98, _
                           0, 9.113e-16, 103.919, 17834.191, Double.MaxValue }
Dim result As Single

For Each value As Double In values
   result = Convert.ToSingle(value)
   Console.WriteLine("Converted the {0} value '{1}' to the {2} value {3}.", _
                     value.GetType().Name, value, _
                     result.GetType().Name, result)
Next
' The example displays the following output:
'    Converted the Double value '-1.79769313486232E+308' to the Single value -Infinity.
'    Converted the Double value '-13800000000' to the Single value -1.38E+10.
'    Converted the Double value '-1023.299' to the Single value -1023.299.
'    Converted the Double value '-12.98' to the Single value -12.98.
'    Converted the Double value '0' to the Single value 0.
'    Converted the Double value '9.113E-16' to the Single value 9.113E-16.
'    Converted the Double value '103.919' to the Single value 103.919.
'    Converted the Double value '17834.191' to the Single value 17834.19.
'    Converted the Double value '1.79769313486232E+308' to the Single value Infinity.

Zobacz też

Dotyczy

ToSingle(Decimal)

Źródło:
Convert.cs
Źródło:
Convert.cs
Źródło:
Convert.cs

Konwertuje wartość określonej liczby dziesiętnej na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

public:
 static float ToSingle(System::Decimal value);
public static float ToSingle (decimal value);
static member ToSingle : decimal -> single
Public Shared Function ToSingle (value As Decimal) As Single

Parametry

value
Decimal

Liczba dziesiętna, która ma zostać przekształcona.

Zwraca

Liczba zmiennoprzecinkowa o pojedynczej precyzji, która jest równoważna value.

value jest zaokrąglany przy użyciu zaokrąglania do najbliższego. Na przykład po zaokrągleniu do dwóch dziesiętnych wartość 2,345 staje się 2,34, a wartość 2,355 staje się 2,36.

Przykłady

Poniższy przykład konwertuje każdy element w tablicy Decimal wartości na Single wartość.

decimal[] values = { Decimal.MinValue, -1034.23m, -12m, 0m, 147m,
                            199.55m, 9214.16m, Decimal.MaxValue };
float result;

foreach (var value in values)
{
   result = Convert.ToSingle(value);
   Console.WriteLine("Converted the {0} value '{1}' to the {2} value {3}.",
                     value.GetType().Name, value,
                     result.GetType().Name, result);
}
// The example displays the following output:
//    Converted the Decimal value '-79228162514264337593543950335' to the Single value -7.9228163E+28.
//    Converted the Decimal value '-1034.23' to the Single value -1034.23.
//    Converted the Decimal value '-12' to the Single value -12.
//    Converted the Decimal value '0' to the Single value 0.
//    Converted the Decimal value '147' to the Single value 147.
//    Converted the Decimal value '199.55' to the Single value 199.55.
//    Converted the Decimal value '9214.16' to the Single value 9214.16.
//    Converted the Decimal value '79228162514264337593543950335' to the Single value 7.9228163E+28.
let values = 
    [| Decimal.MinValue; -1034.23m; -12m; 0m; 147m; 199.55m; 9214.16m; Decimal.MaxValue |]

for value in values do
    let result = Convert.ToSingle value
    printfn $"Converted the {value.GetType().Name} value {value} to the {result.GetType().Name} value {result}."
// The example displays the following output:
//    Converted the Decimal value '-79228162514264337593543950335' to the Single value -7.9228163E+28.
//    Converted the Decimal value '-1034.23' to the Single value -1034.23.
//    Converted the Decimal value '-12' to the Single value -12.
//    Converted the Decimal value '0' to the Single value 0.
//    Converted the Decimal value '147' to the Single value 147.
//    Converted the Decimal value '199.55' to the Single value 199.55.
//    Converted the Decimal value '9214.16' to the Single value 9214.16.
//    Converted the Decimal value '79228162514264337593543950335' to the Single value 7.9228163E+28.
Dim values() As Decimal = { Decimal.MinValue, -1034.23d, -12d, 0d, 147d, _
                            199.55d, 9214.16d, Decimal.MaxValue }
Dim result As Single

For Each value As Decimal In values
   result = Convert.ToSingle(value)
   Console.WriteLine("Converted the {0} value '{1}' to the {2} value {3}.", _
                     value.GetType().Name, value, _
                     result.GetType().Name, result)
Next
' The example displays the following output:
'    Converted the Decimal value '-79228162514264337593543950335' to the Single value -7.922816E+28.
'    Converted the Decimal value '-1034.23' to the Single value -1034.23.
'    Converted the Decimal value '-12' to the Single value -12.
'    Converted the Decimal value '0' to the Single value 0.
'    Converted the Decimal value '147' to the Single value 147.
'    Converted the Decimal value '199.55' to the Single value 199.55.
'    Converted the Decimal value '9214.16' to the Single value 9214.16.
'    Converted the Decimal value '79228162514264337593543950335' to the Single value 7.922816E+28.

Zobacz też

Dotyczy

ToSingle(DateTime)

Źródło:
Convert.cs
Źródło:
Convert.cs
Źródło:
Convert.cs

Wywołanie tej metody zawsze zgłasza błąd InvalidCastException.

public:
 static float ToSingle(DateTime value);
public static float ToSingle (DateTime value);
static member ToSingle : DateTime -> single
Public Shared Function ToSingle (value As DateTime) As Single

Parametry

value
DateTime

Wartość daty i godziny, która ma zostać przekształcona.

Zwraca

Ta konwersja nie jest obsługiwana. Nie jest zwracana żadna wartość.

Wyjątki

Ta konwersja nie jest obsługiwana.

Dotyczy

ToSingle(Char)

Źródło:
Convert.cs
Źródło:
Convert.cs
Źródło:
Convert.cs

Wywołanie tej metody zawsze zgłasza błąd InvalidCastException.

public:
 static float ToSingle(char value);
public static float ToSingle (char value);
static member ToSingle : char -> single
Public Shared Function ToSingle (value As Char) As Single

Parametry

value
Char

Znak Unicode, który ma zostać przekształcony.

Zwraca

Ta konwersja nie jest obsługiwana. Nie jest zwracana żadna wartość.

Wyjątki

Ta konwersja nie jest obsługiwana.

Zobacz też

Dotyczy

ToSingle(Byte)

Źródło:
Convert.cs
Źródło:
Convert.cs
Źródło:
Convert.cs

Konwertuje wartość określonej 8-bitowej liczby całkowitej bez znaku na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

public:
 static float ToSingle(System::Byte value);
public static float ToSingle (byte value);
static member ToSingle : byte -> single
Public Shared Function ToSingle (value As Byte) As Single

Parametry

value
Byte

8-bitowa liczba całkowita bez znaku, która ma być konwertowana.

Zwraca

Liczba zmiennoprzecinkowa o pojedynczej precyzji, która jest równoważna value.

Przykłady

Poniższy przykład konwertuje każdy element w tablicy wartości bajtów na Single wartość.

byte[] numbers = { Byte.MinValue, 10, 100, Byte.MaxValue };
float result;

foreach (byte number in numbers)
{
   result = Convert.ToSingle(number);
   Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.",
                     number.GetType().Name, number,
                     result.GetType().Name, result);
}
// The example displays the following output:
//       Converted the Byte value 0 to the Single value 0.
//       Converted the Byte value 10 to the Single value 10.
//       Converted the Byte value 100 to the Single value 100.
//       Converted the Byte value 255 to the Single value 255.
let numbers = [| Byte.MinValue; 10uy; 100uy; Byte.MaxValue |]

for number in numbers do
    let result = Convert.ToSingle number
    printfn $"Converted the {number.GetType().Name} value {number} to the {result.GetType().Name} value {result}."
// The example displays the following output:
//       Converted the Byte value 0 to the Single value 0.
//       Converted the Byte value 10 to the Single value 10.
//       Converted the Byte value 100 to the Single value 100.
//       Converted the Byte value 255 to the Single value 255.
Dim numbers() As Byte = { Byte.MinValue, 10, 100, Byte.MaxValue }
Dim result As Single

For Each number As Byte In numbers
   result = Convert.ToSingle(number)
   Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.", _
                     number.GetType().Name, number, _
                     result.GetType().Name, result)
Next
' The example displays the following output:
'       Converted the Byte value 0 to the Single value 0.
'       Converted the Byte value 10 to the Single value 10.
'       Converted the Byte value 100 to the Single value 100.
'       Converted the Byte value 255 to the Single value 255.

Dotyczy

ToSingle(Boolean)

Źródło:
Convert.cs
Źródło:
Convert.cs
Źródło:
Convert.cs

Konwertuje określoną wartość logiczną na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

public:
 static float ToSingle(bool value);
public static float ToSingle (bool value);
static member ToSingle : bool -> single
Public Shared Function ToSingle (value As Boolean) As Single

Parametry

value
Boolean

Wartość logiczna, która ma zostać przekształcona.

Zwraca

Liczba 1, jeśli value to true; w przeciwnym razie, 0.

Przykłady

Poniższy przykład konwertuje wartości true logiczne i false na Single wartości.

bool[] flags = { true, false };
float result;

foreach (bool flag in flags)
{
   result = Convert.ToSingle(flag);
   Console.WriteLine("Converted {0} to {1}.", flag, result);
}
// The example displays the following output:
//       Converted True to 1.
//       Converted False to 0.
let flags = [| true; false |]

for flag in flags do
    let result = Convert.ToSingle flag
    printfn $"Converted {flag} to {result}."
// The example displays the following output:
//       Converted True to 1.
//       Converted False to 0.
Dim flags() As Boolean = { True, False }
Dim result As Single

For Each flag As Boolean In flags
   result = Convert.ToSingle(flag)
   Console.WriteLine("Converted {0} to {1}.", flag, result)
Next
' The example displays the following output:
'       Converted True to 1.
'       Converted False to 0.

Dotyczy

ToSingle(Int64)

Źródło:
Convert.cs
Źródło:
Convert.cs
Źródło:
Convert.cs

Konwertuje wartość określonej 64-bitowej liczby całkowitej ze znakiem na równoważną liczbę zmiennoprzecinkową o pojedynczej precyzji.

public:
 static float ToSingle(long value);
public static float ToSingle (long value);
static member ToSingle : int64 -> single
Public Shared Function ToSingle (value As Long) As Single

Parametry

value
Int64

Liczba całkowita z podpisem 64-bitowym do przekonwertowania.

Zwraca

Liczba zmiennoprzecinkowa o pojedynczej precyzji, która jest równoważna value.

Przykłady

Poniższy przykład konwertuje każdy element w tablicy długich liczb całkowitych na Single wartość.

long[] numbers = { Int64.MinValue, -903, 0, 172, Int64.MaxValue};
float result;

foreach (long number in numbers)
{
   result = Convert.ToSingle(number);
   Console.WriteLine("Converted the {0} value '{1}' to the {2} value {3}.",
                     number.GetType().Name, number,
                     result.GetType().Name, result);
}
// The example displays the following output:
//    Converted the Int64 value '-9223372036854775808' to the Single value -9.223372E+18.
//    Converted the Int64 value '-903' to the Single value -903.
//    Converted the Int64 value '0' to the Single value 0.
//    Converted the Int64 value '172' to the Single value 172.
//    Converted the Int64 value '9223372036854775807' to the Single value 9.223372E+18.
let numbers = 
    [| Int64.MinValue; -903; 0; 172; Int64.MaxValue |]

for number in numbers do
    let result = Convert.ToSingle number
    printfn $"Converted the {number.GetType().Name} value {number} to the {result.GetType().Name} value {result}."
// The example displays the following output:
//    Converted the Int64 value '-9223372036854775808' to the Single value -9.223372E+18.
//    Converted the Int64 value '-903' to the Single value -903.
//    Converted the Int64 value '0' to the Single value 0.
//    Converted the Int64 value '172' to the Single value 172.
//    Converted the Int64 value '9223372036854775807' to the Single value 9.223372E+18.
      Dim numbers() As Long = { Int64.MinValue, -903, 0, 172, Int64.MaxValue}
      Dim result As Single

      For Each number As Long In numbers
         result = Convert.ToSingle(number)
         Console.WriteLine("Converted the {0} value '{1}' to the {2} value {3}.", _
                           number.GetType().Name, number, _
                           result.GetType().Name, result)

      Next
      ' The example displays the following output:
Converted the Int64 value '-9223372036854775808' to the Single value -9.223372E+18.
Converted the Int64 value '-903' to the Single value -903.
Converted the Int64 value '0' to the Single value 0.
Converted the Int64 value '172' to the Single value 172.
Converted the Int64 value '9223372036854775807' to the Single value 9.223372E+18.

      '    Converted the Int64 value '-9223372036854775808' to the Single value -9.223372E+18.
      '    Converted the Int64 value '-903' to the Single value -903.
      '    Converted the Int64 value '0' to the Single value 0.
      '    Converted the Int64 value '172' to the Single value 172.
      '    Converted the Int64 value '9223372036854775807' to the Single value 9.223372E+18.

Dotyczy