zoukankan      html  css  js  c++  java
  • 将二进制数据导出本地文件

      将文件以二进制文件的形式存放到数据库中,需要时再将其导出来,首先看下实现代码:

    方法1:直接以文件形式导出:

    Procedure ExportAttachment(AdoConn: TADOConnection);
    var
      pAdoQry: TADOQuery;
      sSQL, sFileName: string;
    begin
      pAdoQry := TADOQuery.Create(nil);
      pAdoQry.Connection := AdoConn;
      
      try
        sSQL := 'SELECT * FROM TUXKNR';
        if not OpenSQL(pAdoQry, sSQL) then Exit; // OpenSQL:公共函数
    
        sFileName := 'D:	mp	mp.dwg';
        if FileExists(sFileName) then
          DeleteFile(sFileName);
          
        if pAdoQry.FieldByName('TUNR').IsNull then Exit;
        TBlobField(pAdoQry.FieldByName('TUNR')).SaveToFile(sFileName);  // TBlobField /r:DB
      finally
        FreeAndNil(pAdoQry);
      end;          
    end;
    

     方法2:以流的形式导出: 

    Procedure ExportAttachment(AdoConn: TADOConnection);
    var
      pAdoQry: TADOQuery;
      pStream: TMemoryStream;   //r:classes
      pJpg: TJPEGImage;         //r:jpeg
      sSQL: string;
    begin
      pAdoQry := TADOQuery.Create(nil);
      pAdoQry.Connection := AdoConn;
      
      try
        sSQL := 'SELECT * FROM TUXKNR';
        if not OpenSQL(pAdoQry, sSQL) then Exit; // OpenSQL:公共函数
          
        if pAdoQry.FieldByName('TUNR').IsNull then Exit;
    
        pStream:= TMemoryStream.Create;
        pJpg := TJPEGImage.Create;
        try
          TBlobField(pAdoQry.FieldByName('TUNR')).SaveToStream(pStream);
          pStream.Position := 0;
          pJpg.LoadFromStream(pStream);
          imgSign.Picture.Assign(pJpg); // imgSign:图片控件(为了显示效果)
        finally
          pJpg.Free;
          pStream.Free;
        end;
      finally
        FreeAndNil(pAdoQry);
      end;          
    end;
    
  • 相关阅读:
    python-创建一个登录判断的函数
    python-创建一个本地txt文本
    python-简单函数小例子 单位转换
    微信小程序性能测试之jmeter踩坑记录(四)
    手动添加Keil的固件包Packs
    使用Socket的简单Web服务器
    网络端口(port)
    Redis 5种主要数据类型和命令
    c# 索引器方法
    .net 获取类型的Type类型的几种方法
  • 原文地址:https://www.cnblogs.com/hachun/p/4434711.html
Copyright © 2011-2022 走看看