BitConverter.ToInt32 Methode

Definition

Überlädt

ToInt32(Byte[], Int32)

Gibt eine 32-Bit-Ganzzahl mit Vorzeichen zurück, die aus vier Bytes an der angegebenen Position in einem Bytearray konvertiert wurde.Returns a 32-bit signed integer converted from four bytes at a specified position in a byte array.

ToInt32(ReadOnlySpan<Byte>)

Konvertiert eine schreibgeschützte Bytespanne in einen 32-Bit-Integerwert mit Vorzeichen.Converts a read-only byte span into a 32-bit signed integer.

ToInt32(Byte[], Int32)

Gibt eine 32-Bit-Ganzzahl mit Vorzeichen zurück, die aus vier Bytes an der angegebenen Position in einem Bytearray konvertiert wurde.Returns a 32-bit signed integer converted from four bytes at a specified position in a byte array.

public:
 static int ToInt32(cli::array <System::Byte> ^ value, int startIndex);
public static int ToInt32 (byte[] value, int startIndex);
static member ToInt32 : byte[] * int -> int
Public Shared Function ToInt32 (value As Byte(), startIndex As Integer) As Integer

Parameter

value
Byte[]

Ein Bytearray.An array of bytes.

startIndex
Int32

Die Anfangsposition in value.The starting position within value.

Gibt zurück

Eine 32-Bit-Ganzzahl mit Vorzeichen, die beginnend bei startIndex aus vier Bytes gebildet wird.A 32-bit signed integer formed by four bytes beginning at startIndex.

Ausnahmen

startIndex ist größer oder gleich der Länge von value minus 3 und ist kleiner oder gleich der Länge von value minus 1.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.

value ist null.value is null.

startIndex ist kleiner als 0 (null) oder größer als die Länge von value minus 1.startIndex is less than zero or greater than the length of value minus 1.

Beispiele

Im folgenden Beispiel wird die ToInt32-Methode verwendet, um Int32-Werte aus einem vier-Byte-Array und aus den oberen vier Bytes eines 8-Byte-Arrays zu erstellen.The following example uses the ToInt32 method to create Int32 values from a four-byte array and from the upper four bytes of an eight-byte array. Außerdem werden die Methoden GetBytes(Int32) und ToInt32 verwendet, um einen Roundtrip für einen Int32-Wert durchzusetzen.It also uses the GetBytes(Int32) and ToInt32 methods to round-trip an Int32 value.

using System;

public class Example
{
   public static void Main()
   {
      // Create an Integer from a 4-byte array.
      Byte[] bytes1 = { 0xEC, 0x00, 0x00, 0x00 };
      Console.WriteLine("{0}--> 0x{1:X4} ({1:N0})", FormatBytes(bytes1),
                                      BitConverter.ToInt32(bytes1, 0));
      // Create an Integer from the upper four bytes of a byte array.
      Byte[] bytes2 = BitConverter.GetBytes(Int64.MaxValue / 2);
      Console.WriteLine("{0}--> 0x{1:X4} ({1:N0})", FormatBytes(bytes2),
                                      BitConverter.ToInt32(bytes2, 4));
      
      // Round-trip an integer value.
      int original = (int) Math.Pow(16, 3);
      Byte[] bytes3 = BitConverter.GetBytes(original);
      int restored = BitConverter.ToInt32(bytes3, 0);
      Console.WriteLine("0x{0:X4} ({0:N0}) --> {1} --> 0x{2:X4} ({2:N0})", original, 
                        FormatBytes(bytes3), restored);
   }

   private static string FormatBytes(Byte[] bytes)
   {
       string value = "";
       foreach (var byt in bytes)
          value += String.Format("{0:X2} ", byt);

       return value;
   }
}
// The example displays the following output:
//       EC 00 00 00 --> 0x00EC (236)
//       FF FF FF FF FF FF FF 3F --> 0x3FFFFFFF (1,073,741,823)
//       0x1000 (4,096) --> 00 10 00 00  --> 0x1000 (4,096)
Module Example
   Public Sub Main()
      ' Create an Integer from a 4-byte array.
      Dim bytes1() As Byte = { &hEC, &h00, &h00, &h00 }
      Console.WriteLine("{0}--> 0x{1:X4} ({1:N0})", FormatBytes(bytes1),
                                      BitConverter.ToInt32(bytes1, 0))
      ' Create an Integer from the upper four bytes of a byte array.
      Dim bytes2() As Byte = BitConverter.GetBytes(Int64.MaxValue \ 2)
      Console.WriteLine("{0}--> 0x{1:X4} ({1:N0})", FormatBytes(bytes2),
                                      BitConverter.ToInt32(bytes2, 4))
      
      ' Round-trip an integer value.
      Dim original As Integer = CInt(16^3)
      Dim bytes3() As Byte = BitConverter.GetBytes(original)
      Dim restored As Integer = BitConverter.ToInt32(bytes3, 0)
      Console.WriteLine("0x{0:X4} ({0:N0}) --> {1} --> 0x{2:X4} ({2:N0})", original, 
                        FormatBytes(bytes3), restored)
   End Sub
   
   Private Function FormatBytes(bytes() As Byte) As String
       Dim value As String = ""
       For Each byt In bytes
          value += String.Format("{0:X2} ", byt)
       Next
       Return value
   End Function
End Module
' The example displays the following output:
'       EC 00 00 00 --> 0x00EC (236)
'       FF FF FF FF FF FF FF 3F --> 0x3FFFFFFF (1,073,741,823)
'       0x1000 (4,096) --> 00 10 00 00  --> 0x1000 (4,096)

Hinweise

Mit der ToInt32-Methode werden die Bytes aus dem Index startIndex in startIndex + 3 in einen Int32-Wert konvertiert.The ToInt32 method converts the bytes from index startIndex to startIndex + 3 to an Int32 value. Die Reihenfolge der Bytes im Array muss die Byte Reihenfolge der Architektur des Computer Systems widerspiegeln. Weitere Informationen finden Sie im Abschnitt "Hinweise" BitConverter.The order of bytes in the array must reflect the endianness of the computer system's architecture; for more information, see the Remarks section of BitConverter.

Siehe auch

ToInt32(ReadOnlySpan<Byte>)

Konvertiert eine schreibgeschützte Bytespanne in einen 32-Bit-Integerwert mit Vorzeichen.Converts a read-only byte span into a 32-bit signed integer.

public:
 static int ToInt32(ReadOnlySpan<System::Byte> value);
public static int ToInt32 (ReadOnlySpan<byte> value);
static member ToInt32 : ReadOnlySpan<byte> -> int
Public Shared Function ToInt32 (value As ReadOnlySpan(Of Byte)) As Integer

Parameter

value
ReadOnlySpan<Byte>

Eine schreibgeschützte Spanne, die die zu konvertierenden Bytes enthält.A read-only span containing the bytes to convert.

Gibt zurück

Ein 32-Bit-Integerwert mit Vorzeichen, der die konvertierten Bytes darstellt.A 32-bit signed integer representing the converted bytes.

Ausnahmen

Die Länge von value ist kleiner als 4.The length of value is less than 4.

Gilt für: