您的位置:首页 > 编程语言 > C#

C#导出数据到Excel——简单数据导出

2012-08-28 08:48 429 查看
#region 读取模板
Excel.Application xapp = new Excel.Application();
//导出数据的模板
Excel.Workbook xbook = xapp.Workbooks._Open(context.Server.MapPath("~/Search/template/" + template), Missing.Value, Missing.Value,
Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value,
Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);

Excel.Worksheet xsheet = (Excel.Worksheet)xbook.Sheets[1];
#endregion

#region 读取数据
//导出文本
Excel.Range rngD2 = xsheet.get_Range("D2", Missing.Value);
rngD2.Value2 = row["productCode"].ToString();

//...

string imageUrl = context.Server.MapPath("~/admin/" + row["imageUrl"].ToString());

//导出图片
if (System.IO.File.Exists(imageUrl))
{
Excel.Range rngA11 = xsheet.get_Range("A11", Missing.Value);
Excel.Pictures pics = xsheet.Pictures(Missing.Value) as Excel.Pictures;
Excel.Picture pic = pics.Insert(imageUrl, Missing.Value);
//设置图片的位置
pic.Top = (double)rngA11.Top + 2;
pic.Left = (double)rngA11.Left;
}
#endregion

#region 保存数据
string filePath = context.Server.MapPath("~/Search/download/" + folderName + "/" + Utils.CreateGuide() + ".xlsx");
xbook.SaveAs(filePath, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value,
Excel.XlSaveAsAccessMode.xlShared, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);
xsheet = null;
xbook.Close(Missing.Value, Missing.Value, Missing.Value);
xbook = null;
xapp.Quit();//如果不加这句代码,Excel对象不能从内存中退出
xapp = null;
#endregion

可以自定义模板,按照指定模板的格式导出数据。

定义的Excel模板:



导出的结果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  excel c# null string