[英]data format in connection betwen desktop app and UWP application
我在桌面應用程序(c#)和HoloLens(UWP)之間創建了客戶端服務器服務。 服務器在HoloLens上運行,而PC App是客戶端。
我在傳輸數據時遇到一些問題,這是我的問題。
雖然UWP服務器使用Windows.Netowrking和Windows.Networking.Sockets,但它似乎以字符串形式接收和發送數據。 PC App使用System.Net和System.Net.Sockets,並且在發送字符串之前,它需要將字符串轉換為字節格式。
這會是一個問題嗎? 我找不到太多有關Windows.Networking的文檔,而且我也不知道發送之前的數據是否仍轉換為字節。
我不知道發送之前的數據是否仍轉換為字節
使用網絡API調用Write()或Send()時,通常可以選擇提供多種數據類型,無論是字符串,字節[]還是整數-但這並不影響數據的物理方式傳輸。
在內部,傳輸將以有效的方式(以二進制流的形式)“序列化”,但是您無需關心這些細節。
因為另一端將能夠以byte []或int []或字符串的形式處理該數據。
您可能要研究的一個常見問題是字節序 ,或檢查如何將字符串更改為byte []。 例如,問題是您在字符串之間或在不同的byte []等之間錯誤地進行了更改。 您可以讀入System.Text.Encoding來檢查是否在byte []和字符串之間正確移動。
//Turn a string into a byte[], for your PC app to send
byte[] byteData = System.Text.Encoding.ASCII.GetBytes("Message");
//On the other end read that byte[] into ASCII characters
char[] charsData = System.Text.Encoding.ASCII.GetChars(byteData);
//Check you read something, and turn those chars into a string.
if (charsData != null && charsData.Length > 0)
string stringData = new string(chars);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.