2011-12-23 2 views
3

Класс ChannelBuffer класса Netty предоставляет удобные методы для чтения неподписанных типов из ChannelBuffer, однако, как представляется, не существует эквивалентных методов для записи неподписанных типов в ChannelBuffer.Запись неподписанных типов в Netty ChannelBuffer

Я чувствую, что мне что-то не хватает. Каков рекомендуемый подход, например, написать целое число без знака в ChannelBuffer?

Спасибо!

+0

я думаю, что это может помочь вам http://stackoverflow.com/questions/4266756/can-we-make-unsigned-byte-in-java – duanji

ответ

2

Если вы хотите написать 32-битное значение, это все равно.

channelBuffer.writeInt(my32bitValue); 
+0

Рассмотрим: 'долго reallyBigUnsignedInt = inChannelBuffer.readUnsignedInt(); ' Предположим, что reallyBigUnsignedInt превышает максимальное значение для подписанного int. Каков наилучший способ записать это значение в другой ChannelBuffer как беззнаковый int? Благодаря! – HolySamosa

+0

А, я вижу. Downcasting большой unsigned int, хранящийся как long для int «just works». – HolySamosa

+0

32-битное значение - это значение, которое использует 4 байта, то, что вы делаете из него без знака, подписанного, плавающего и т. Д., Зависит от вас, когда вы его читаете. –

Смежные вопросы