打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
用C#编程从数据库中读取图片数据导进Excel文件的方法
近日在毕业设计中遇到要解决用C#编程从数据库中读取图片数据导进Excel文件的问题,经过两三天的苦苦搜索资料想方设法解决问题,终于获得解决方法,代码如下(程序要另外引用Excel.dll,需要获取文件请访问:
http://sunrise.szu.edu.cn/Lvyou/Forum/ForumContent.asp?ID=182):

using   System;
using   System.IO;
using   System.Data;
using   System.Drawing;
using   System.Drawing.Imaging;
using   System.Windows.Forms;
using   Excel;

private   void   EduceExcel()
  {
    string   picPath=Directory.GetCurrentDirectory()+ '\\Excelpic.jpg ';
    string   ExcelName=Directory.GetCurrentDirectory()+ '\\ExcelModul.xls ';
    string   fileName   =   'Excel '+DateTime.Now.ToString().Replace( ': ',   ' ')   +   '.xls ';
    Excel.Application   app   =new   Excel.Application();//建立Excel对象
      app.Visible=true;//让Excel文件可见
      Workbook   objbook;
      objbook   =   app.Workbooks.Add(ExcelName);
      Worksheet   worksheet;
      worksheet   =(Worksheet)objbook.Worksheets[1];
      Excel.Pictures   pics=(Excel.Pictures)worksheet.Pictures(Type.Missing);//建立图片集合对象

      int   TD=1;
      int   p=1;
      PicItemColletion   picItems=   PicItem.Getpictems();//读取数据库图片数据集合
        foreach(PicItem   PI   in   picItems)
        {
          if(PI.ImageData   !=   null)
          {
          MemoryStream   stream   =   new   MemoryStream(PI.ImageData,   0,   PI.ImageData.Length);
         
          Bitmap   bitmap   =   new   Bitmap(stream);

          bitmap.Save(picPath,System.Drawing.Imaging.ImageFormat.Jpeg);//保存临时图片文件到硬盘里
            if(File.Exists(picPath))
            {
            stream.Close();//关闭图像文件流

          Range   range_1   =range=worksheet.get_Range( 'A '+TD.ToString(), 'A '+TD.ToString());
          //获取填充单元格范围
                         
            pics.Insert(picPath,Type.Missing);//获取图片

            Excel.Picture   pic   =   (Excel.Picture   )pics.Item(p);//建立图片集合某一图片对象

              pic.Left   =   (double)range_1.Left;
              pic.Top   =   (double)range_1.Top;
              pic.Height   =(double)range_1.Height;
              pic.Width   =(double)range_1.Width;
              TD=TD+1;
              p=p+1;  
            }
        }

      if(File.Exists(picPath))
      {
        File.Delete(picPath);//删除图片
      }
  }
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
图片、文件防盗链程序 - 为了梦想…… - 博客园
网经 - Excel对象模型
如何实现VB与EXCEL的无缝连接
如何用 Stata 批量读取多张工作表的 Excel 文件
大话 Python:python 操作 excel 系列 -- 怎样将数据写入 excel 文件?
ruby相关脚本
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服