在Flex中将ByteArray转换为Integer

时间:2011-03-10 16:43:09

标签: flex actionscript-3 bytearray

有人可以解释如何将ByteArray转换为int吗?

谢谢,

1 个答案:

答案 0 :(得分:1)

所以为了尝试这样做,你可以试试这段代码:

function test(){
    var bytes:ByteArray = new ByteArray();
    bytes.writeInt(0x00DDAA99);   //create my byte array with int 14527129
    bytes.position = 0;           //move the postion to the start
    var newInt:int = bytes.readInt();  //read the bytes from starting position
    trace("new num: "+newInt);    //print out the number
}

此代码将首先创建一个字节数组并将int放入其中。这可能是您需要启动代码的地方。然后假设在我设置为0的起始位置之后有4个字节要读取。然后将字节数组中的4个字节读入队列。请注意,如果ByteArray中没有4个字节,或者您的位置设置不正确,则代码将失败。确保添加对这些方案的检查。

此代码还假定字节数组为Big Endian。确保如果您有来自另一个系统的字节数组,则您知道int值具有哪个字节序。如果需要,更改字节数组上的字节序值。