一个技巧告诉我,我可以使用bytes+""
转换为String而不是纯String。任何UI组件都可以接受它,但是当我将bytes+""
引入switch
语句时它不会接受。如何将bytearray转换为纯字符串?
private function socketDataHandler(event:ProgressEvent):void {
try {
rsocket = event.target as Socket;
bytes = new ByteArray();
rsocket.readBytes(bytes);
kEvent(bytes+"");
rsocket.flush();
} catch (error:Error) {
Alert.show(error.message, "Error");
}
}
答案 0 :(得分:6)
如果您的字符串是UTF8,则可以执行以下操作:
var myString:String = bytes.readUTF();
您可以在此处的文档中看到:
http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/utils/ByteArray.html
答案 1 :(得分:1)
只需使用 toString()方法。
var ba:ByteArray;
var str:String = ba.toString();