winsock传送字符串编码的有关问题

winsock传送字符串编码的问题本帖最后由 itakeblue 于 2011-07-30 00:15:43 编辑Winsock.SendData string

winsock传送字符串编码的问题
本帖最后由 itakeblue 于 2011-07-30 00:15:43 编辑

Winsock.SendData string & vbCrLf

string 为一般赋值,未做过编码设置,都说vb的字符串编码是unicode的,但经测试:

在简体中文操作系统中Winsock.SendData此字符串是以 gb2312 编码发送的
在韩文操作系统中Winsock.SendData此字符串是以 EUC_KR 编码发送的

因为客户端只有用以上编码收取字符串才不会出现乱码。

有什么办法可以统一成一种编码发送吗?最好是 utf-8 编码

尝试过 Winsock.SendData StrConv((string & vbCrLf), vbUnicode) 不行,失败
还有将 string 通过 adodb.stream 以 utf-8 编码写入一个临时文本文件,再以 utf-8 读出再发送,还是不行
[最优解释]
建议你用字节的方法发送,先把要发送的文字转换为字节数组,然后发送
[其他解释]
字节发送就不用考虑编码问题了?

dim tmp() as byte
tmp(0) = "this is test string"
winsock SendData tmp(0)

发送端这样写对吗?
[其他解释]
upupup