2009-07-01 59 views

回答

2

flash.net.Socket类是一个二进制输入/输出类。您不必为套接字本身指定编码,因为您可以低级别访问套接字中的数据。

您正在寻找的是用于从不同字符集中读取字符串的Socket::readMultiByte方法。

public function readMultiByte(length:uint, charSet:String):String 

同样,使用Socket::writeMultiByte来从特定字符集写入字符串。

public function writeMultiByte(value:String, charSet:String):void 
+0

我用的是XMLSocket类(http://help.adobe.com/en_US/AS3LCR/Flash_10.0/flash/net/XMLSocket.html),我不认为类有这个功能。你认为我应该改为Socket类吗? – Tom 2009-07-01 15:52:34

0

据我所知,Flash只支持Unicode ...虽然可以选择使用操作系统的代码页System.useCodePage。但这取决于用户的操作系统和语言,除非您确切知道自己在做什么,否则不推荐。

至于每个字符使用更少的字节,我知道字母数字字符只使用UTF-8中的一个字节。

干杯...