unity中UDP接收数据如何还原问题?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了unity中UDP接收数据如何还原问题?相关的知识,希望对你有一定的参考价值。
请问在unity中使用UDP接收到的数据是string类型的,怎么样才能将接收到的数据转换为原始的float类型的?比如我接收的是数据20,如何还原为20来参与计算?谢谢
参考技术A 封装的数据包应该有对应的数据格式,这样你接收的时候才能对应的解析。比如key,value键值对或者直接JSON取到数据包后按约定格式反序列化成对应对象数据追问
接收到的是UTF8编码的string,使用强制格式转换的函数去处理时总是出错,有可能需要自己编写格式转换程序,但是我又不懂
追答你需要先了解数据包的结构,一般数据包里就是包头+包体,由于你这里用的UDP那么每个包都是一个整包,不用考虑分包问题。
包头存一些数据源端口、数据长度、数据校验码之类的东西,而真正对业务有用的其实是包体部分。
你要做的就是先把字符串中包体部分取出来,然后按之前说的按对应的格式取解析包体
发送和接收UDP数据[重复]
【中文标题】发送和接收UDP数据[重复]【英文标题】:Send and receive UDP data [duplicate] 【发布时间】:2012-05-09 03:08:25 【问题描述】:可能重复:Sending UDP Packet in C#
我有一些十六进制格式的数据,我想发送到 UDP 服务器,然后从服务器返回包含一些数据的响应。我将如何在 C# 中执行此操作?
我可能会补充一点,我没有对服务器的本地访问权限,我只是想看看通过将这些特定数据发送给它会得到什么响应。
【问题讨论】:
看http://***.com/a/2637791/884410 我曾尝试使用 UdpClient.Send 方法将数据发送到 UDP 服务器,我猜这可行,但我也希望能够从服务器获得响应。跨度> 【参考方案1】:1- A Chat Application Using Asynchronous UDP sockets
2-Send UDP packet in C#
3-Testing TCP and UDP socket servers using C# and .NET
4-Receive and send data
5-UDP Send and Receive using threads in VB.NET
6-A UDP based Reliable Data Transfer Library
7-msdn microsoft
【讨论】:
我之前尝试过您的第二个链接,虽然它似乎应该做我想要的,但我没有得到任何数据。这是否意味着服务器没有响应任何内容? 与我们分享你所做的,写一些代码让我们看看有什么问题以上是关于unity中UDP接收数据如何还原问题?的主要内容,如果未能解决你的问题,请参考以下文章
如何将labview tcp/ip接收到的平化字符串数据还原