A正在使用Unity为HoloLens开发UWP应用程序。该应用程序的目的是从TCP服务器读取数据流。问题是我发送的数据的类型是double。
有趣的部分是HoloLens并没有所有的C#API作为Unity。 基于https://docs.microsoft.com/en-us/windows/uwp/gaming/missing-dot-net-apis-in-unity-and-uwp,我必须编写两次代码,以便可以在编辑器和设备中执行它。我找不到如何使用UWP库读取字节流的方法。
对于Unity,我可以使用TcpClient(这种情况下有效):
client = new System.Net.Sockets.TcpClient(host, Int32.Parse(port));
stream = client.GetStream(); //get stream object for reading
Debug.Log("connected \n");
// Read incoming stream into byte array.
int i;
i = stream.Read(bytes, 0, bytes.Length);
如何使用Windows.Networking.Sockets.StreamSocket()读取原始字节? 目前我有:
socket = new Windows.Networking.Sockets.StreamSocket();
Windows.Networking.HostName serverHost = new Windows.Networking.HostName(host);
await socket.ConnectAsync(serverHost, port);
socket = new Windows.Networking.Sockets.StreamSocket();
//the server hostname that we will be establishing a connection to.
Windows.Networking.HostName serverHost = new Windows.Networking.HostName(host);
await socket.ConnectAsync(serverHost, port);
Stream streamIn = socket.InputStream.AsStreamForRead();
您能否建议我应该使用哪种方法而不是AsStreamForRead()来读取字节流?
非常感谢!