Qt 这个UTF-8编码正确吗?

Qt 这个UTF-8编码正确吗?,qt,utf-8,Qt,Utf 8,我有一个Qt应用程序(C++)和一个unicode字符串(在QString中)。 我将字符串发送给两个客户端,一个接收二进制数据,另一个接收JSON 当我发送以下字符串“Milanović”时,客户端的字母“ć”就会出错。虽然我甚至不确定它是否从服务器正确发送 我将该字符的以下字节发送给接受二进制数据的客户端:C486。这就是我从QString::toUtf8()中得到的 对于JSON,我使用QJson,它将该字符串转换为“MilanoviÄ”。这就是我在控制台上看到的。字节仍然是“C486”

我有一个Qt应用程序(C++)和一个unicode字符串(在QString中)。 我将字符串发送给两个客户端,一个接收二进制数据,另一个接收JSON

当我发送以下字符串“Milanović”时,客户端的字母“ć”就会出错。虽然我甚至不确定它是否从服务器正确发送

我将该字符的以下字节发送给接受二进制数据的客户端:C486。这就是我从QString::toUtf8()中得到的

对于JSON,我使用QJson,它将该字符串转换为“MilanoviÄ”。这就是我在控制台上看到的。字节仍然是“C486”


这是正确的,还是我应该在服务器端更改一些内容?我可以将QJson库更改为不对代码>127的字符进行转换,但我宁愿不这样做,除非我必须这样做。请告知。

您应该让客户端告诉服务器他们实际需要的编码,然后在发送到客户端之前通过适当的QTextEncoder运行文本。

字节仍然是
C486
,因此它没有改变任何内容。字节只是用错误的编码进行了解释。您需要通知显示字符的任何屏幕,这些字节的编码是什么。