朱贝文 2022-08-29 13:25 采纳率: 100%
浏览 71
已结题

Unity UDP 中文乱码

我用测试工具Sockettool测试Unity UDP,Sockettool接到的消息中文是乱码,Unity接收到的中文消息也是乱码。我已经转成utf-8格式了,不知道为什么?
发送代码:
public void SendMeg(string sendMsg_)
{
Debug.Log("发送消息:" + sendMsg_);
IPAddress address = IPAddress.Parse(this.sendIP);
IPEndPoint endPoint = new IPEndPoint(address, this.sendPort);
if (sendMsg_ != null)
{
byte[] bytes = Encoding.UTF8.GetBytes(sendMsg_);
UdpClient udpClient = new UdpClient();
udpClient.Send(bytes, bytes.Length, endPoint);
udpClient.Close();
}
}
接收代码:
private void ReceiveCilentData()
{
while (true)
{
byte[] data = udpClient.Receive(ref iPEndPoint);
string msg = Encoding.UTF8.GetString(data);
Debug.Log(msg);
if (msg == null || msg == "") return;
msgQueue.Enqueue(msg);
}
}

img

img

  • 写回答

1条回答 默认 最新

  • 秋杪 2022-08-29 13:53
    关注

    那应该是你这个调试工具编码不是utf8的。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 9月28日
  • 已采纳回答 9月20日
  • 创建了问题 8月29日