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;
             
            }


  • 相关阅读:
    COM编程入门
    DirectShow Filter 开发典型例子分析 ——字幕叠加 (FilterTitleOverlay)1
    互联网的三大巨头 百度 阿里巴巴 腾讯(BAT)
    入侵Tomcat服务器一次实战
    TinyXML:一个优秀的C++ XML解析器
    Apache POI (JAVA处理Office文档的类库)
    MediaInfo源代码分析 4:Inform()函数
    MediaInfo源代码分析 3:Open()函数
    洛谷 P3905 道路重建
    CF16A Flag
  • 原文地址:https://www.cnblogs.com/kevinGao/p/2294469.html
Copyright © 2011-2022 走看看