Apache flex 字节数组的编号(Int64 BigEndian)

Apache flex 字节数组的编号(Int64 BigEndian),apache-flex,flex4,flash-builder,Apache Flex,Flex4,Flash Builder,如何在Flex/Flash中将64位数字转换为字节数组?对flex来说还是相当新的,所以。。。告诉我还有比这更好的方法: //Some Int64 value var n:Number = 256 * 256 * 256 * 256 * 256; //256 ^ 4 not working in AS? var i1:uint = n / (256 * 256 * 256 * 256); var i2:uint = n - i1; var b:ByteArray = new

如何在Flex/Flash中将64位数字转换为字节数组?对flex来说还是相当新的,所以。。。告诉我还有比这更好的方法:

//Some Int64 value
var n:Number = 256 * 256 * 256 * 256 * 256;

//256 ^ 4 not working in AS?        
var i1:uint = n / (256 * 256 * 256 * 256);
var i2:uint = n - i1;

var b:ByteArray = new ByteArray();
b.writeUnsignedInt(i1);
b.writeUnsignedInt(i2);
这样行吗

var n:Number = 256 * 256 * 256 * 256 * 256;
var b:ByteArray = new ByteArray();
b.writeDouble(n);

中找到,我最终通过以下方式解决了这个问题:

i1 * (256 * (256 << 16)) + i2

i1*(256*(作为旁注,256^4不起作用,因为
^
是按位异或运算符。如果要进行幂运算,只需将其作为循环或隐式写入即可。我最终通过执行以下操作解决了此问题:i1*(256*(256