求助:字符显示问题

DrumDance 2003-12-19 10:38:18
作为client跟合作方的server(对方用java开发)建立流,我用c#写,英文string对方接收正常,中文则全是问号。而用java就接收正常。代码如下:
c#代码:
String outData = "这是一个测试";
Byte[] outPacket = Encoding.ASCII.GetBytes(outData.ToString());
networkStream.Write(outPacket, 0, outPacket.Length);
java代码:
String outData = "这是一个测试";
byte[] outPacket = outData.getBytes();
out.write(outPacket, 0, outPacket.length);
谢谢
...全文
57 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
DrumDance 2003-12-19
  • 打赏
  • 举报
回复
我试过Encoding.Unicode.GetBytes(outData.ToString()),不行。
tangyanjun1 2003-12-19
  • 打赏
  • 举报
回复
中文根本就不是ASCII嘛。
在.NET里面用的都是unicode编码。所以你用ASCII来编码你的中文,当然都是乱码了。
在.NET里有很多编码方式的,最简单的就是选用默认的Encoding
DrumDance 2003-12-19
  • 打赏
  • 举报
回复
问acewang(大灰很)
Encoding.ASCII.GetBytes-->>Encoding.Default.GetBytes
这是为什么?
我不懂电脑 2003-12-19
  • 打赏
  • 举报
回复
就是编码问题
DrumDance 2003-12-19
  • 打赏
  • 举报
回复
哥们儿,成了。
讲讲为什么?
cuike519 2003-12-19
  • 打赏
  • 举报
回复
Encoding.ASCII 这里改成System.Text.Encoding.UTF8.GetBytes(//。。。)!try again!
acewang 2003-12-19
  • 打赏
  • 举报
回复
Encoding.ASCII.GetBytes-->>Encoding.Default.GetBytes

111,125

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧