У меня есть следующий код на C #:
Console.WriteLine("Connecting to server...");
TcpClient client = new TcpClient("127.0.0.1", 25565);
client.Client.Send(BitConverter.GetBytes(0x02));
client.Client.Send(BitConverter.GetBytes(0x0005));
client.Client.Send(Encoding.UTF8.GetBytes("wedtm"));
Console.Write("{0:x2}", client.GetStream().ReadByte());
На самом деле, я не могу понять, как перенести это в ruby.Любая помощь здесь?
Это то, что у меня пока, но это не работает, как ожидалось:
require 'socket'
s = TCPSocket.open("127.0.0.1", 25565)
s.write(0x02)
s.write(0x0005)
s.write("wedtm".bytes)
response = s.recvfrom(2)
puts "Response Size #{response.size}: #{response.to_s}"
Ответ должен быть 0x02
РЕДАКТИРОВАТЬ:
Я предполагаю, что мне нужно использовать String # unpack для этого, однако я не могу понять, как получить "wedtm" для вывода в соответствующий формат \x000\x000\x000\x000
.