Метод GetBytes
Перегрузки GetBytes принимают int,
long, double и другие типы и
создают новый byte[] нужной длины.
Порядок байт зависит от машины - см.
IsLittleEndian.
На little-endian GetBytes(1) для
int даёт 1 0 0 0. Запись в
готовый буфер - через
TryWriteBytes.
Синтаксис
byte[] data = BitConverter.GetBytes(12345);
Пример
Давайте получим байты для int равного
1 и выведем их через string.Join:
using System;
class Program
{
static void Main()
{
byte[] data = BitConverter.GetBytes(1);
string res = string.Join(" ", data);
Console.WriteLine(res);
}
}
Результат выполнения кода на little-endian:
"1 0 0 0"
Пример
Давайте закодируем число 12345:
using System;
class Program
{
static void Main()
{
byte[] data = BitConverter.GetBytes(12345);
Console.WriteLine(data.Length);
}
}
Результат выполнения кода:
4
Пример
Давайте получим восемь байт для long:
using System;
class Program
{
static void Main()
{
byte[] data = BitConverter.GetBytes(1L);
Console.WriteLine(data.Length);
}
}
Результат выполнения кода:
8
Смотрите также
-
метод
ToInt32,
который читаетintиз байт -
метод
TryWriteBytes,
который пишет вSpanбез нового массива -
IsLittleEndian,
от которого зависит порядок байт -
BitConverter,
класс со статическимGetBytes