Каков наилучший способ чтения беззнакового 24-разрядного целого числа из потока C # с помощью BinaryReader?
До сих пор я использовал что-то вроде этого:
private long ReadUInt24(this BinaryReader reader)
{
try
{
return Math.Abs((reader.ReadByte() & 0xFF) * 256 * 256 + (reader.ReadByte() & 0xFF) * 256 + (reader.ReadByte() & 0xFF));
}
catch
{
return 0;
}
}
Есть ли лучший способ сделать это?