As3 读取long类型的数字
来源:互联网 发布:企业以英文为域名的有 编辑:程序博客网 时间:2024/05/29 15:12
AS3 由于只有 int, uint, Number类型;所以再跟后台交互时 无法读取Long;(及没有 socket.readLong的方法);
后来项目又需要 发送long; 于是又写了一个 写入long的方法:
static public function writeLong( bytes:ByteArray, value:Number):void
{
var str:String = value.toString(16);
var lgth:int = 16 - str.length;
for( var i:int = 0; i < lgth; i++)
{
str = "0" + str;
}
var subStr:String = str.substr( 0, 8);
bytes.writeUnsignedInt( parseInt( "0x" + subStr));
subStr = str.substr( 8, 8);
bytes.writeUnsignedInt( parseInt( "0x" + subStr));
但后台很多时候 想传long 类型的值; 如时间, 较大数额的钱;
于是写了个 读取long 方法;
static public function readLong( bytes:ByteArray):Number
{
var long:String = "0x";
for (var i:int = 0; i < 8; i++)
{
var numStr:String = bytes.readUnsignedByte().toString(16);
var hexStr:String = numStr.length == 1 ? "0"+numStr : numStr;
long += hexStr;
}
return parseInt( long);
}后来项目又需要 发送long; 于是又写了一个 写入long的方法:
static public function writeLong( bytes:ByteArray, value:Number):void
{
var str:String = value.toString(16);
var lgth:int = 16 - str.length;
for( var i:int = 0; i < lgth; i++)
{
str = "0" + str;
}
var subStr:String = str.substr( 0, 8);
bytes.writeUnsignedInt( parseInt( "0x" + subStr));
subStr = str.substr( 8, 8);
bytes.writeUnsignedInt( parseInt( "0x" + subStr));
}
注意一点的是: 由于AS3中Number型采用的是浮点数格式, 能表示的最大有效位是52位, 所以用Number来存储long的数据,不能超过52位; 不然就会出问题
0 0
- As3 读取long类型的数字
- Java中long类型直接赋值大数字的问题
- Java的long、double类型的原子性读取问题
- Oracle 数据库中 Long 类型字段的读取
- int ,long , long long类型的范围
- int ,long , long long类型的范围
- int ,long , long long类型的范围
- int ,long , long long类型的范围
- int ,long , long long类型的范围
- INT ,LONG , LONG LONG类型的范围
- int ,long , long long类型的范围
- int ,long , long long类型的范围
- int ,long , long long类型的范围
- int ,long , long long类型的范围
- int ,long , long long类型的范围
- int, long, long long类型的范围
- int ,long , long long类型的范围
- int ,long , long long类型的范围
- 关于Tcp封包
- 字符串问题1:单词是否由相同字母组成
- Storm:最火的流式处理框架
- ios学习之autorelease pool
- djanjo及相关模块安装
- As3 读取long类型的数字
- Socket/TCP粘包、多包和少包, 断包
- <MEMORY>Project Euler NO40
- [PHP]如何使用Face++接口开发微信公共平台的人脸识别系统
- 5秒消失的处理中对话框 ProgressDialog
- Fedora-20 uefi U盘安装
- HAProxy的独门武器:ebtree
- 题解:把数组排成最小的数
- static与全局变量