# Decimal.ToSByte(Decimal) メソッド

## 定義

この API は CLS 準拠ではありません。

CLS 準拠の代替
System.Decimal.ToInt16(Decimal)

``````public:
static System::SByte ToSByte(System::Decimal value);``````
``````[System.CLSCompliant(false)]
public static sbyte ToSByte (decimal value);``````
``public static sbyte ToSByte (decimal value);``
``static member ToSByte : decimal -> sbyte``
``Public Shared Function ToSByte (value As Decimal) As SByte``

value
Decimal

#### 戻り値

`value` と等価の 8 ビット符号付き整数。An 8-bit signed integer equivalent to `value`.

#### 例外

`value`MinValue 未満であるか、MaxValue を超えています。`value` is less than MinValue or greater than MaxValue.

## 例

``````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 {
sbyte number = Decimal.ToSByte(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
//     OverflowException: 255.999
//     OverflowException: 256
//     127.999 --> 127
//     OverflowException: 128
//     -0.999 --> 0
//     -1 --> -1
//     -128.999 --> -128
//     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 SByte = Decimal.ToSByte(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
'     OverflowException: 255.999
'     OverflowException: 256
'     127.999 --> 127
'     OverflowException: 128
'     -0.999 --> 0
'     -1 --> -1
'     -128.999 --> -128
'     OverflowException: -129
``````

## 注釈

また、Explicit 代入演算子を使用して、Decimal 値を8ビット符号付き整数に変換することもできます。You can also convert a Decimal value to an 8-bit signed integer by using the Explicit assignment operator. 演算子は縮小変換を実行するため、または Visual Basic の変換関数C#でキャスト演算子を使用する必要があります。Because the operator performs a narrowing conversion, you must use a casting operator in C# or a conversion function in Visual Basic.