实现办法是自己去网上下一份200k的gb2312 unicode转换表然后,自己写算法查找和装换吧.
public function readMultiByte (length:int, charSet:String):String
{
if(charSet=="UNICODE" || charSet=="unicode")
{
return readUnicode(length);
}
if(charSet=="GB2312" || charSet=="gb2312")
{
return readGBBytes(length);
}
return readUTFBytes (length);
}
public function readGBBytes (len:int):String
{
var value:String = "";
var max:int = this._position_ + len;
var c:int, c2:int;
// gb2312-encode
while (this._position_ < max) {
c = _data_.getUint8 (this._position_++);
if (c < 0x80) {
if (c !=0)
{
value +=String.fromCharCode (c);
}
} else {
c2 = _data_.getUint8 (this._position_++);
var tmp:int=(c & 0xff) << 8| (c2 & 0xff)
value +=String.fromCharCode (gb2unicodechar[tmp]);
}
}
return value;
}
恩,这样就成了