RFC просто пытается сказать, что целое число со знаком является нормальным 4-байтовым целым числом с байтами, упорядоченными в порядке с прямым порядком байтов.
Теперь вы, скорее всего, работаете на машине с прямым порядком байтов, и BitConverter.GetBytes()
даст вам byte[]
в обратном порядке. Так что вы можете попробовать:
int intValue;
byte[] intBytes = BitConverter.GetBytes(intValue);
Array.Reverse(intBytes);
byte[] result = intBytes;
Чтобы код был максимально переносимым, вы можете сделать это следующим образом:
int intValue;
byte[] intBytes = BitConverter.GetBytes(intValue);
if (BitConverter.IsLittleEndian)
Array.Reverse(intBytes);
byte[] result = intBytes;