【发布时间】:2014-09-23 21:38:16
【问题描述】:
我正在尝试通过 UDP 套接字发送流。 “SendTo”采用 byte[] 缓冲区参数。如果我有一个流对象(缓冲区),不知道该怎么做。请帮忙!谢谢。 ByteBufferOutputStream 似乎没有将流转换为字节的功能。
ByteBufferOutputStream buffer = new ByteBufferOutputStream();
Avro.IO.Encoder ej = new BinaryEncoder(buffer);
ej.WriteInt(Convert.ToInt32(testEvent["schemaId"]));
var dwrd = new DefaultWriter(schema);
dwrd.Write<GenericRecord>(testEvent, ej);
buffer.Flush();
Socket clientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Udp);
IPAddress serverAddr = IPAddress.Parse("192.168.1.1");
IPEndPoint endPoint = new IPEndPoint(serverAddr, 2190);
clientSocket.SendTo(buffer, endPoint);
【问题讨论】: