zoukankan      html  css  js  c++  java
  • [置顶] AMF序列化为对象和AMF序列化为二进制字节流

             在使用Flex作为页面前端驱动Socket通讯时,一般使用AMF格式来进行的发送和接收,因此就要涉及到不同的数据格式的转换。

    下面提供了AMF序列化为对象和AMF序列化为二进制字节流的方法,代码如下:

    //将AMF格式字节流转换为对象

    public static T AMF_Deserializer<T>(byte[] buffer,int length)
            {
                    MemoryStream stream = new MemoryStream(buffer,0,length);                       
                    ByteArray byteArray = new ByteArray(stream);                
                    object obj = byteArray.ReadObject();
                    if (obj == null)
                    {
                        return default(T);
                    }
                    return (T)obj;
            }

          // 将对象转换为AMF格式的字节流
            public static byte[] AMF_Serializer(object obj)
            {
                    FluorineFx.AMF3.ByteArray byteArray = new FluorineFx.AMF3.ByteArray();
                    byteArray.WriteObject(obj);
                    byte[] buffer = new byte[byteArray.Length];
                    byteArray.Position = 0;
                    byteArray.ReadBytes(buffer, 0, byteArray.Length);
                    return buffer;
             
            }


  • 相关阅读:
    国王游戏
    从2014到2015,还有什么?
    【转载】别把自己推到了墙角
    IE9+浏览器input文本框/密码框后面的小叉子/小眼睛清除
    ajax开发模拟后端数据接口
    谈谈JavaScript事件
    也说border-box盒模型
    极其简单的使用基于gulp和sass前端工作流
    如何使用javascript书写递归函数
    Git基本命令和GitFlow工作流
  • 原文地址:https://www.cnblogs.com/kevinGao/p/2776053.html
Copyright © 2011-2022 走看看