ToInt32 Method

BitConverter.ToInt32 Method

[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]

Returns a 32-bit signed integer converted from four bytes at a specified position in a byte array.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

public static int ToInt32(
	byte[] value,
	int startIndex
)

Parameters

value
Type: System.Byte []
An array of bytes.
startIndex
Type: System.Int32
The starting position within value.

Return Value

Type: System.Int32
A 32-bit signed integer formed by four bytes beginning at startIndex.

ExceptionCondition
ArgumentException

startIndex is greater than or equal to the length of value minus 3, and is less than or equal to the length of value minus 1.

ArgumentNullException

value is null.

ArgumentOutOfRangeException

startIndex is less than zero or greater than the length of value minus 1.

The following code example converts elements of Byte arrays to Int32 values with the ToInt32 method.


// Example of the BitConverter.ToInt32 method.
using System;

class Example
{
   const string formatter = "{0,5}{1,17}{2,15}";

   // Convert four byte array elements to an int and display it.
   public static void BAToInt32(System.Windows.Controls.TextBlock outputBlock, byte[] bytes, int index)
   {
      int value = BitConverter.ToInt32(bytes, index);

      outputBlock.Text += String.Format(formatter, index,
          BitConverter.ToString(bytes, index, 4), value) + "\n";
   }

   // Display a byte array, using multiple lines if necessary.
   public static void WriteMultiLineByteArray(System.Windows.Controls.TextBlock outputBlock, byte[] bytes)
   {
      const int rowSize = 20;
      int iter;

      outputBlock.Text += "initial byte array" + "\n";
      outputBlock.Text += "------------------" + "\n";

      for (iter = 0; iter < bytes.Length - rowSize; iter += rowSize)
      {
         outputBlock.Text += String.Format(
             BitConverter.ToString(bytes, iter, rowSize));
         outputBlock.Text += "-" + "\n";
      }

      outputBlock.Text += String.Format(BitConverter.ToString(bytes, iter)) + "\n";
      outputBlock.Text += "\n";
   }

   public static void Demo(System.Windows.Controls.TextBlock outputBlock)
   {
      byte[] byteArray = {
             15,   0,   0,   0,   0, 128,   0,   0,  16,   0, 
              0, 240, 255,   0, 202, 154,  59,   0,  54, 101, 
            196, 241, 255, 255, 255, 127 };

      outputBlock.Text += String.Format(
          "This example of the BitConverter.ToInt32( byte[ ], " +
          "int ) \nmethod generates the following output. It " +
          "converts elements \nof a byte array to int values.\n") + "\n";

      WriteMultiLineByteArray(outputBlock, byteArray);

      outputBlock.Text += String.Format(formatter, "index", "array elements",
          "int") + "\n";
      outputBlock.Text += String.Format(formatter, "-----", "--------------",
          "---") + "\n";

      // Convert byte array elements to int values.
      BAToInt32(outputBlock, byteArray, 1);
      BAToInt32(outputBlock, byteArray, 0);
      BAToInt32(outputBlock, byteArray, 21);
      BAToInt32(outputBlock, byteArray, 6);
      BAToInt32(outputBlock, byteArray, 9);
      BAToInt32(outputBlock, byteArray, 13);
      BAToInt32(outputBlock, byteArray, 17);
      BAToInt32(outputBlock, byteArray, 22);
      BAToInt32(outputBlock, byteArray, 2);
   }
}

/*
This example of the BitConverter.ToInt32( byte[ ], int )
method generates the following output. It converts elements
of a byte array to int values.

initial byte array
------------------
0F-00-00-00-00-80-00-00-10-00-00-F0-FF-00-CA-9A-3B-00-36-65-
C4-F1-FF-FF-FF-7F

index   array elements            int
-----   --------------            ---
    1      00-00-00-00              0
    0      0F-00-00-00             15
   21      F1-FF-FF-FF            -15
    6      00-00-10-00        1048576
    9      00-00-F0-FF       -1048576
   13      00-CA-9A-3B     1000000000
   17      00-36-65-C4    -1000000000
   22      FF-FF-FF-7F     2147483647
    2      00-00-00-80    -2147483648
*/


Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Windows Phone

Show:
© 2017 Microsoft