Hello!
How would you go about representing the byte type in Ruby? I have a task
where I neeed to be writing and reading bytes from a tcp socket - so for
instance I might want to send/receive an integer which is 1 byte long,
other times 4 bytes. in Java you can do that easily with the byte type,
so far I have no good idea how to do this in Ruby.
–
Agnieszka
On 7/12/06, Agnieszka F. [email protected] wrote:
How would you go about representing the byte type in Ruby? I have a task
where I neeed to be writing and reading bytes from a tcp socket - so for
instance I might want to send/receive an integer which is 1 byte long,
other times 4 bytes. in Java you can do that easily with the byte type,
so far I have no good idea how to do this in Ruby.
Use a String.
Pedro.
Agnieszka F. wrote:
Hello!
How would you go about representing the byte type in Ruby? I have a task
where I neeed to be writing and reading bytes from a tcp socket - so for
instance I might want to send/receive an integer which is 1 byte long,
other times 4 bytes. in Java you can do that easily with the byte type,
so far I have no good idea how to do this in Ruby.
Use Array#pack to put your bytes/integers/etc in a string. Send and
receive strings. Use String#unpack to extract bytes/integers/etc from
the string.
Good luck.
class Integer
def bytes
" "*self
end
end
send(10.bytes)
j`ey
http://www.eachmapinject.com
Carlos wrote:
Use Array#pack to put your bytes/integers/etc in a string. Send and
receive strings. Use String#unpack to extract bytes/integers/etc from
the string.
And you might want to check out bit-struct for a more object-oriented
and readable wrapper around pack and unpack:
http://redshift.sourceforge.net/bit-struct/