mscomm收到的是byte[] 吗?如果是,你看一下你用哪中Encoding, 可能是Encoding 的选择不对,比如试试: Encoding.UTF8; .Net自带了下面这些: // Get different encodings.
Encoding u7 = Encoding.UTF7;
Encoding u8 = Encoding.UTF8;
Encoding u16LE = Encoding.Unicode;
Encoding u16BE = Encoding.BigEndianUnicode;
Encoding u32 = Encoding.UTF32;
Encoding u7 = Encoding.UTF7;
Encoding u8 = Encoding.UTF8;
Encoding u16LE = Encoding.Unicode;
Encoding u16BE = Encoding.BigEndianUnicode;
Encoding u32 = Encoding.UTF32;
Encoding.UTF8;
Encoding.Unicode;
Encoding.BigEndianUnicode;
Encoding.UTF32;
我每个都试过了,还是乱码
代码是这样的System.Text.Encoding encoding = System.Text.Encoding.UTF8;
byte [] bTemp = (byte[])this.axMSComm1.Input;//数据送数组
String temp = Encoding.Unicode.GetString(bTemp);
textBox_RecASC.Text = temp;
string temp = encoding.GetString(bTemp);
将输入模式设置成文本形式试下吧