3

我有一个允许交换消息的应用程序,我正在尝试发送带有特殊字符的字符串

string my_str = "isto não está a funcionar! (pt)";
comPort1.Write(my_str);

但我收到isto n?o est? a funcionar! (pt).

我试过放comPort1.Encoding = Encoding.UTF8;之前,但它还没有工作。我尝试了不同的编码。

4

1 回答 1

4

如果您将字符串的编码字节写入端口,它们将被正确发送。这段代码将为您解决问题:

string my_str = "isto não está a funcionar! (pt)";
byte[] my_bytes = System.Text.Encoding.UTF8.GetBytes(str);
comPort1.Write(my_bytes, 0, my_bytes.Length);
于 2013-09-24T16:20:40.280 回答