[转] 从数据库中读取图片并导入Excel文件,C#方式
直接源码吧。
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);//删除图片 } }
你们的评论、反馈,及对你们有所用,是我整理材料和博文写作的最大的鼓励和唯一动力。欢迎讨论和关注!
没有整理与归纳的知识,一文不值!高度概括与梳理的知识,才是自己真正的知识与技能。 永远不要让自己的自由、好奇、充满创造力的想法被现实的框架所束缚,让创造力自由成长吧! 多花时间,关心他(她)人,正如别人所关心你的。理想的腾飞与实现,没有别人的支持与帮助,是万万不能的。
没有整理与归纳的知识,一文不值!高度概括与梳理的知识,才是自己真正的知识与技能。 永远不要让自己的自由、好奇、充满创造力的想法被现实的框架所束缚,让创造力自由成长吧! 多花时间,关心他(她)人,正如别人所关心你的。理想的腾飞与实现,没有别人的支持与帮助,是万万不能的。