zoukankan      html  css  js  c++  java
  • 对象持久化

     

    网上查了下,貌似WriteComponentResFile,ReadComponentResFile可以,但是必须是一个TComponet的对象,我要串行化一个OleVariant的对象,大大们,怎么做?

    要持久对象,必须继承TPersistent....

    function   ComponentToStr(AComponent:   TComponent):   string;   
      var   
          BinStream:   TMemoryStream;   
          StrStream:   TStringStream;   
          s:   string;   
      begin   
          BinStream   :=   TMemoryStream.Create;   
          try   
              StrStream   :=   TStringStream.Create(s);   
              try   
                  BinStream.WriteComponent(AComponent);   
                  BinStream.Seek(0,   soFromBeginning);   
                  ObjectBinaryToText(BinStream,   StrStream);   
                  StrStream.Seek(0,   soFromBeginning);   
                  Result   :=   StrStream.DataString;   
              finally   
                  StrStream.Free;   
              end;   
          finally   
              BinStream.Free   
          end;   
      end;   
        
      function   StrToComponent(const   Value:   string;   
          Instance:   TComponent):   TComponent;   
      var   
          StrStream:   TStringStream;   
          BinStream:   TMemoryStream;   
      begin   
          StrStream   :=   TStringStream.Create(Value);   
          try   
              BinStream   :=   TMemoryStream.Create;   
              try   
                  ObjectTextToBinary(StrStream,   BinStream);   
                  BinStream.Seek(0,   soFromBeginning);   
                  Result   :=   BinStream.ReadComponent(Instance);   
              finally   
                  BinStream.Free;   
              end;   
          finally   
              StrStream.Free;   
          end;   
      end;

     

    使用之前注册以下:   
          RegisterClasses

  • 相关阅读:
    CSS 圣杯/双飞翼布局
    java 面向对象编程-- 第15章 集合框架
    java 面向对象编程--第十四章 多线程编程
    java 面向对象编程-- 第十三章 反射、类加载与垃圾回收
    java 面向对象编程 --第十二章 JDK常用类
    java 面向对象编程--第十章 接口
    java面向对象编程--第十一章 异常处理
    java面向对象编程--第九章 多态和抽象
    java面向对象编程——第八章 类的高级概念
    java面向对象编程— —第七章 继承
  • 原文地址:https://www.cnblogs.com/djcsch2001/p/2035704.html
Copyright © 2011-2022 走看看