BitConverter.ToUInt16 Method
Microsoft Silverlight will reach end of support after October 2021. Learn more.
Returns a 16-bit unsigned integer converted from two bytes at a specified position in a byte array.
This API is not CLS-compliant.
Namespace: System
Assembly: mscorlib (in mscorlib.dll)
Syntax
'Declaration
<CLSCompliantAttribute(False)> _
Public Shared Function ToUInt16 ( _
value As Byte(), _
startIndex As Integer _
) As UShort
[CLSCompliantAttribute(false)]
public static ushort ToUInt16(
byte[] value,
int startIndex
)
Parameters
- value
Type: array<System.Byte[]
The array of bytes.
- startIndex
Type: System.Int32
The starting position within value.
Return Value
Type: System.UInt16
A 16-bit unsigned integer formed by two bytes beginning at startIndex.
Exceptions
Exception | Condition |
---|---|
ArgumentException | startIndex equals the length of value minus 1. |
ArgumentNullException | value is nulla null reference (Nothing in Visual Basic). |
ArgumentOutOfRangeException | startIndex is less than zero or greater than the length of value minus 1. |
Examples
The following code example converts elements of Byte arrays to UInt16 values with the ToUInt16 method.
' Example of the BitConverter.ToUInt16 method.
Module Example
Const formatter As String = "{0,5}{1,17}{2,10}"
' Convert two Byte array elements to a UInt16 and display it.
Sub BAToUInt16(ByVal outputBlock As System.Windows.Controls.TextBlock, ByVal bytes() As Byte, ByVal index As Integer)
Dim value As UInt16 = BitConverter.ToUInt16(bytes, index)
outputBlock.Text &= String.Format(formatter, index, _
BitConverter.ToString(bytes, index, 2), value) & vbCrLf
End Sub
Public Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock)
Dim byteArray As Byte() = { _
15, 0, 0, 255, 3, 16, 39, 255, 255, 127}
outputBlock.Text &= String.Format( _
"This example of the BitConverter.ToUInt16( Byte( ), " & _
"Integer ) " & vbCrLf & "method generates the " & _
"following output. It converts elements " & vbCrLf & _
"of a Byte array to UInt16 values." & vbCrLf) & vbCrLf
outputBlock.Text &= "initial Byte array" & vbCrLf
outputBlock.Text &= "------------------" & vbCrLf
outputBlock.Text &= BitConverter.ToString(byteArray) & vbCrLf
outputBlock.Text &= vbCrLf
outputBlock.Text &= String.Format(formatter, "index", "array elements", _
"UInt16") & vbCrLf
outputBlock.Text &= String.Format(formatter, "-----", "--------------", _
"------") & vbCrLf
' Convert Byte array elements to UInt16 values.
BAToUInt16(outputBlock, byteArray, 1)
BAToUInt16(outputBlock, byteArray, 0)
BAToUInt16(outputBlock, byteArray, 3)
BAToUInt16(outputBlock, byteArray, 5)
BAToUInt16(outputBlock, byteArray, 8)
BAToUInt16(outputBlock, byteArray, 7)
End Sub
End Module
' This example of the BitConverter.ToUInt16( Byte( ), Integer )
' method generates the following output. It converts elements
' of a Byte array to UInt16 values.
'
' initial Byte array
' ------------------
' 0F-00-00-FF-03-10-27-FF-FF-7F
'
' index array elements UInt16
' ----- -------------- ------
' 1 00-00 0
' 0 0F-00 15
' 3 FF-03 1023
' 5 10-27 10000
' 8 FF-7F 32767
' 7 FF-FF 65535
// Example of the BitConverter.ToUInt16 method.
using System;
class Example
{
const string formatter = "{0,5}{1,17}{2,10}";
// Convert two byte array elements to a ushort and display it.
public static void BAToUInt16(System.Windows.Controls.TextBlock outputBlock, byte[] bytes, int index)
{
ushort value = BitConverter.ToUInt16(bytes, index);
outputBlock.Text += String.Format(formatter, index,
BitConverter.ToString(bytes, index, 2), value) + "\n";
}
public static void Demo(System.Windows.Controls.TextBlock outputBlock)
{
byte[] byteArray = {
15, 0, 0, 255, 3, 16, 39, 255, 255, 127 };
outputBlock.Text += String.Format(
"This example of the BitConverter.ToUInt16( byte[ ], " +
"int ) \nmethod generates the following output. It " +
"converts elements \nof a byte array to ushort values.\n") + "\n";
outputBlock.Text += "initial byte array" + "\n";
outputBlock.Text += "------------------" + "\n";
outputBlock.Text += BitConverter.ToString(byteArray) + "\n";
outputBlock.Text += "\n";
outputBlock.Text += String.Format(formatter, "index", "array elements",
"ushort") + "\n";
outputBlock.Text += String.Format(formatter, "-----", "--------------",
"------") + "\n";
// Convert byte array elements to ushort values.
BAToUInt16(outputBlock, byteArray, 1);
BAToUInt16(outputBlock, byteArray, 0);
BAToUInt16(outputBlock, byteArray, 3);
BAToUInt16(outputBlock, byteArray, 5);
BAToUInt16(outputBlock, byteArray, 8);
BAToUInt16(outputBlock, byteArray, 7);
}
}
/*
This example of the BitConverter.ToUInt16( byte[ ], int )
method generates the following output. It converts elements
of a byte array to ushort values.
initial byte array
------------------
0F-00-00-FF-03-10-27-FF-FF-7F
index array elements ushort
----- -------------- ------
1 00-00 0
0 0F-00 15
3 FF-03 1023
5 10-27 10000
8 FF-7F 32767
7 FF-FF 65535
*/
Version Information
Silverlight
Supported in: 5, 4, 3
Silverlight for Windows Phone
Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0
XNA Framework
Supported in: Xbox 360, Windows Phone OS 7.0
Platforms
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.