linux windows socket通讯出现乱码

C、C++和Java语言
回复
weihua2008
帖子: 448
注册时间: 2008-07-10 15:08
送出感谢: 0
接收感谢: 0
联系:

linux windows socket通讯出现乱码

#1

帖子 weihua2008 » 2009-01-12 21:17

想利用socket建立linux和windows之间的连接用来传递数据
在我发送英文字符的时候,接收方显示没有错误发生
一旦发送中文字符的时候,接收方输出的是乱码,有人说在linux下和windows下的编码不一样linux下一般就是UTF-8编码,windows下大多是gb..
有没有好的办法统一一下,或者说规定双方使用同样的编码格式,或者在两者不一样的情况下,我发送数据的时候就将数据以接收方的编码方式转换要发送数据的编码,比如用iconv函数族
我应该如何做才能保障在在我发送的“新年快乐”这四个字,在windows下打印出来还是这四个字
多多指教
头像
BigSnake.NET
帖子: 12522
注册时间: 2006-07-02 11:16
来自: 廣州
送出感谢: 0
接收感谢: 7 次
联系:

Re: linux windows socket通讯出现乱码

#2

帖子 BigSnake.NET » 2009-01-12 23:59

就是个编码的问题,自己规定一下就好了
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。
头像
xizhi.zhu
帖子: 46
注册时间: 2008-09-20 4:47
来自: Tampere
送出感谢: 0
接收感谢: 0
联系:

Re: linux windows socket通讯出现乱码

#3

帖子 xizhi.zhu » 2009-01-13 3:15

这个肯定只有自己定义啊,或者分组的第一个字节表示编码格式
weihua2008
帖子: 448
注册时间: 2008-07-10 15:08
送出感谢: 0
接收感谢: 0
联系:

Re: linux windows socket通讯出现乱码

#4

帖子 weihua2008 » 2009-01-13 8:32

xizhi.zhu 写了:这个肯定只有自己定义啊,或者分组的第一个字节表示编码格式
这句话我不懂,即使是在分组的第一个字节表示编码的格式,我知道了格式后哪?是不是还得用函数将分组的内容转换成另一种格式啊,
比如我在linux下从windows接收到gb...编码格式的文本,我在linux还要用函数将文本转换成UTF-8格式的文本在将它输出就不会出现乱码了
是不是这个意思?
回复

回到 “C/C++/Java”