Decimal.ToByte(Decimal) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Convertit la valeur du Decimal spécifié en entier 8 bits non signé équivalent.
public:
static System::Byte ToByte(System::Decimal value);
public static byte ToByte (decimal value);
static member ToByte : decimal -> byte
Public Shared Function ToByte (value As Decimal) As Byte
Paramètres
- value
- Decimal
Nombre décimal à convertir.
Retours
Entier 8 bits non signé équivalant à value
.
Exceptions
value
est inférieur à Byte.MinValue ou supérieur à Byte.MaxValue.
Exemples
L’exemple suivant utilise la ToByte méthode pour convertir des nombres décimaux en Byte valeurs.
using System;
class Example
{
public static void Main( )
{
decimal[] values = { 123m, new Decimal(78000, 0, 0, false, 3),
78.999m, 255.999m, 256m,
127.999m, 128m, -0.999m,
-1m, -128.999m, -129m };
foreach (var value in values) {
try {
byte number = Decimal.ToByte(value);
Console.WriteLine("{0} --> {1}", value, number);
}
catch (OverflowException e)
{
Console.WriteLine("{0}: {1}", e.GetType().Name, value);
}
}
}
}
// The example displays the following output:
// 78 --> 78
// 78.000 --> 78
// 78.999 --> 78
// 255.999 --> 255
// OverflowException: 256
// 127.999 --> 127
// 128 --> 128
// -0.999 --> 0
// OverflowException: -1
// OverflowException: -128.999
// OverflowException: -129
open System
let values =
[ 123m; Decimal(78000, 0, 0, false, 3uy)
78.999m; 255.999m; 256m
127.999m; 128m; -0.999m
-1m; -128.999m; -129m ]
for value in values do
try
let number = Decimal.ToByte value
printfn $"{value} --> {number}"
with :? OverflowException as e ->
printfn $"{e.GetType().Name}: {value}"
// The example displays the following output:
// 78 --> 78
// 78.000 --> 78
// 78.999 --> 78
// 255.999 --> 255
// OverflowException: 256
// 127.999 --> 127
// 128 --> 128
// -0.999 --> 0
// OverflowException: -1
// OverflowException: -128.999
// OverflowException: -129
Module Example
Public Sub Main()
Dim values() As Decimal = { 78d, New Decimal(78000, 0, 0, false, 3),
78.999d, 255.999d, 256d,
127.999d, 128d, -0.999d,
-1d, -128.999d, -129d }
For Each value In values
Try
Dim number As Byte = Decimal.ToByte(value)
Console.WriteLine("{0} --> {1}", value, number)
Catch e As OverflowException
Console.WriteLine("{0}: {1}", e.GetType().Name, value)
End Try
Next
End Sub
End Module
' The example displays the following output:
' 78 --> 78
' 78.000 --> 78
' 78.999 --> 78
' 255.999 --> 255
' OverflowException: 256
' 127.999 --> 127
' 128 --> 128
' -0.999 --> 0
' OverflowException: -1
' OverflowException: -128.999
' OverflowException: -129
Remarques
Le paramètre value
est arrondi à la valeur entière la plus proche vers zéro, et ce résultat est retourné.
Vous pouvez également convertir une Decimal valeur en entier non signé 8 bits à l’aide de l’opérateur d’affectation Explicit . Étant donné que l’opérateur effectue une conversion restrictive, vous devez utiliser un opérateur de casting en C# ou une fonction de conversion en Visual Basic.