BitConverter.ToInt16 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
ToInt16(Byte[], Int32) |
傳回從位元組陣列中指定位置的兩個位元組所轉換的 16 位元帶正負號的整數 (Signed Integer)。 |
ToInt16(ReadOnlySpan<Byte>) |
將唯讀位元組範圍轉換為 16 位元帶正負號的整數。 |
ToInt16(Byte[], Int32)
傳回從位元組陣列中指定位置的兩個位元組所轉換的 16 位元帶正負號的整數 (Signed Integer)。
public:
static short ToInt16(cli::array <System::Byte> ^ value, int startIndex);
public static short ToInt16 (byte[] value, int startIndex);
static member ToInt16 : byte[] * int -> int16
Public Shared Function ToInt16 (value As Byte(), startIndex As Integer) As Short
參數
- value
- Byte[]
位元組陣列,其中包含要轉換的兩個位元組。
- startIndex
- Int32
開始位置在 value
內。
傳回
由兩個位元組所形成的 16 位元帶正負號的整數開始於 startIndex
。
例外狀況
startIndex
等於 value
的長度減去 1。
value
為 null
。
startIndex
小於零或大於 value
的長度減去 1。
範例
下列程式碼範例會使用 ToInt16
方法,將陣列的專案 Byte 轉換為 Int16 值。
// Example of the BitConverter::ToInt16 method.
using namespace System;
// Convert two byte array elements to a short and display it.
void BAToInt16( array<unsigned char>^bytes, int index )
{
short value = BitConverter::ToInt16( bytes, index );
Console::WriteLine( "{0,5}{1,17}{2,10}", index, BitConverter::ToString( bytes, index, 2 ), value );
}
int main()
{
array<unsigned char>^byteArray = {15,0,0,128,16,39,240,216,241,255,127};
Console::WriteLine( "This example of the BitConverter::ToInt16( unsigned "
"char[ ], int ) \nmethod generates the following output. It "
"converts elements of a \nbyte array to short values.\n" );
Console::WriteLine( "initial byte array" );
Console::WriteLine( "------------------" );
Console::WriteLine( BitConverter::ToString( byteArray ) );
Console::WriteLine();
Console::WriteLine( "{0,5}{1,17}{2,10}", "index", "array elements", "short" );
Console::WriteLine( "{0,5}{1,17}{2,10}", "-----", "--------------", "-----" );
// Convert byte array elements to short values.
BAToInt16( byteArray, 1 );
BAToInt16( byteArray, 0 );
BAToInt16( byteArray, 8 );
BAToInt16( byteArray, 4 );
BAToInt16( byteArray, 6 );
BAToInt16( byteArray, 9 );
BAToInt16( byteArray, 2 );
}
/*
This example of the BitConverter::ToInt16( unsigned char[ ], int )
method generates the following output. It converts elements of a
byte array to short values.
initial byte array
------------------
0F-00-00-80-10-27-F0-D8-F1-FF-7F
index array elements short
----- -------------- -----
1 00-00 0
0 0F-00 15
8 F1-FF -15
4 10-27 10000
6 F0-D8 -10000
9 FF-7F 32767
2 00-80 -32768
*/
// Example of the BitConverter.ToInt16 method.
using System;
class BytesToInt16Demo
{
const string formatter = "{0,5}{1,17}{2,10}";
// Convert two byte array elements to a short and display it.
public static void BAToInt16( byte[ ] bytes, int index )
{
short value = BitConverter.ToInt16( bytes, index );
Console.WriteLine( formatter, index,
BitConverter.ToString( bytes, index, 2 ), value );
}
public static void Main( )
{
byte[ ] byteArray =
{ 15, 0, 0, 128, 16, 39, 240, 216, 241, 255, 127 };
Console.WriteLine(
"This example of the BitConverter.ToInt16( byte[ ], " +
"int ) \nmethod generates the following output. It " +
"converts elements \nof a byte array to short values.\n" );
Console.WriteLine( "initial byte array" );
Console.WriteLine( "------------------" );
Console.WriteLine( BitConverter.ToString( byteArray ) );
Console.WriteLine( );
Console.WriteLine( formatter, "index", "array elements", "short" );
Console.WriteLine( formatter, "-----", "--------------", "-----" );
// Convert byte array elements to short values.
BAToInt16( byteArray, 1 );
BAToInt16( byteArray, 0 );
BAToInt16( byteArray, 8 );
BAToInt16( byteArray, 4 );
BAToInt16( byteArray, 6 );
BAToInt16( byteArray, 9 );
BAToInt16( byteArray, 2 );
}
}
/*
This example of the BitConverter.ToInt16( byte[ ], int )
method generates the following output. It converts elements
of a byte array to short values.
initial byte array
------------------
0F-00-00-80-10-27-F0-D8-F1-FF-7F
index array elements short
----- -------------- -----
1 00-00 0
0 0F-00 15
8 F1-FF -15
4 10-27 10000
6 F0-D8 -10000
9 FF-7F 32767
2 00-80 -32768
*/
open System
let print obj1 obj2 obj3 = printfn $"{obj1,5}{obj2,17}{obj3,10}"
// Convert two byte array elements to a short and display it.
let BAToInt16 bytes index =
let value = BitConverter.ToInt16(bytes, index)
print index (BitConverter.ToString(bytes, index, 2)) value
let byteArray =
[| 15uy; 0uy; 0uy; 128uy; 16uy; 39uy; 240uy; 216uy; 241uy; 255uy; 127uy |]
printfn "This example of the BitConverter.ToInt16(byte [], int) \nmethod generates the following output. It converts elements \nof a byte array to short values.\n"
printfn "initial byte array"
printfn "------------------"
printfn $"{BitConverter.ToString byteArray}\n"
print "index" "array elements" "short"
print "-----" "--------------" "-----"
// Convert byte array elements to short values.
BAToInt16 byteArray 1
BAToInt16 byteArray 0
BAToInt16 byteArray 8
BAToInt16 byteArray 4
BAToInt16 byteArray 6
BAToInt16 byteArray 9
BAToInt16 byteArray 2
// This example of the BitConverter.ToInt16(byte [], int )
// method generates the following output. It converts elements
// of a byte array to short values.
// initial byte array
// ------------------
// 0F-00-00-80-10-27-F0-D8-F1-FF-7F
// index array elements short
// ----- -------------- -----
// 1 00-00 0
// 0 0F-00 15
// 8 F1-FF -15
// 4 10-27 10000
// 6 F0-D8 -10000
// 9 FF-7F 32767
// 2 00-80 -32768
' Example of the BitConverter.ToInt16 method.
Module BytesToInt16Demo
Const formatter As String = "{0,5}{1,17}{2,10}"
' Convert two Byte array elements to a Short and display it.
Sub BAToInt16( bytes( ) As Byte, index As Integer )
Dim value As Short = BitConverter.ToInt16( bytes, index )
Console.WriteLine( formatter, index, _
BitConverter.ToString( bytes, index, 2 ), value )
End Sub
Sub Main( )
Dim byteArray as Byte( ) = { _
15, 0, 0, 128, 16, 39, 240, 216, 241, 255, 127 }
Console.WriteLine( _
"This example of the BitConverter.ToInt16( Byte( ), " & _
"Integer ) " & vbCrLf & "method generates the " & _
"following output. It converts elements " & vbCrLf & _
"of a Byte array to Short values." & vbCrLf )
Console.WriteLine( "initial Byte array" )
Console.WriteLine( "------------------" )
Console.WriteLine( BitConverter.ToString( byteArray ) )
Console.WriteLine( )
Console.WriteLine( formatter, "index", "array elements", "Short" )
Console.WriteLine( formatter, "-----", "--------------", "-----" )
' Convert Byte array elements to Short values.
BAToInt16( byteArray, 1 )
BAToInt16( byteArray, 0 )
BAToInt16( byteArray, 8 )
BAToInt16( byteArray, 4 )
BAToInt16( byteArray, 6 )
BAToInt16( byteArray, 9 )
BAToInt16( byteArray, 2 )
End Sub
End Module
' This example of the BitConverter.ToInt16( Byte( ), Integer )
' method generates the following output. It converts elements
' of a Byte array to Short values.
'
' initial Byte array
' ------------------
' 0F-00-00-80-10-27-F0-D8-F1-FF-7F
'
' index array elements Short
' ----- -------------- -----
' 1 00-00 0
' 0 0F-00 15
' 8 F1-FF -15
' 4 10-27 10000
' 6 F0-D8 -10000
' 9 FF-7F 32767
' 2 00-80 -32768
備註
方法 ToInt16 會將位元組從索引 startIndex
轉換成 startIndex
+ 1 轉換為 Int16 值。 陣列中的位元組順序必須反映電腦系統架構的結束度。 如需詳細資訊,請參閱 類別主題的 BitConverter 一節。
另請參閱
適用於
ToInt16(ReadOnlySpan<Byte>)
將唯讀位元組範圍轉換為 16 位元帶正負號的整數。
public:
static short ToInt16(ReadOnlySpan<System::Byte> value);
public static short ToInt16 (ReadOnlySpan<byte> value);
static member ToInt16 : ReadOnlySpan<byte> -> int16
Public Shared Function ToInt16 (value As ReadOnlySpan(Of Byte)) As Short
參數
- value
- ReadOnlySpan<Byte>
包含要轉換之位元組的唯讀範圍。
傳回
16 位元帶正負號的整數,代表已轉換的位元組。
例外狀況
value
的長度小於 2。