最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
asp.net 导出EXCEL文件二种方法
时间:2011-02-15 编辑:简简单单 来源:一聚教程网
方法一 c#导出到excel
string filename="d:abc.xls";
system.data.datatable dt=new system.data.datatable();
filestream objfilestream;
streamwriter objstreamwriter;
string strline="";
objfilestream = new filestream(filename,filemode.openorcreate,fileaccess.write);
objstreamwriter = new streamwriter(objfilestream,system.text.encoding.unicode);for(int i=0;i
{
strline=strline+dt.columns[i].columnname.tostring()+convert.tochar(9);
}
objstreamwriter.writeline(strline);
strline="";for(int i=0;i
{
strline=strline+(i+1)+convert.tochar(9);
for(int j=1;j{
strline=strline+dt.rows[i][j].tostring()+convert.tochar(9);
}
objstreamwriter.writeline(strline);
strline="";
}
objstreamwriter.close();
objfilestream.close();
方法二 datatable 导出到excel代码
private void exportexcel(datatable dt)
{
if (dt == null) return;
microsoft.office.interop.excel.application xlapp = new microsoft.office.interop.excel.application();if (xlapp == null)
{
return;
}
system.globalization.cultureinfo currentci = system.threading.thread.currentthread.currentculture;
system.threading.thread.currentthread.currentculture = new system.globalization.cultureinfo("en-us");
microsoft.office.interop.excel.workbooks workbooks = xlapp.workbooks;
microsoft.office.interop.excel.workbook workbook = workbooks.add(microsoft.office.interop.excel.xlwbatemplate.xlwbatworksheet);
microsoft.office.interop.excel.worksheet worksheet = (microsoft.office.interop.excel.worksheet)workbook.worksheets[1];
microsoft.office.interop.excel.range range;
long totalcount = dt.rows.count;
long rowread = 0;
float percent = 0;
for (int i = 0; i < dt.columns.count; i++)
{
worksheet.cells[1, i + 1] = dt.columns[i].columnname;
range = (microsoft.office.interop.excel.range)worksheet.cells[1, i + 1];
range.interior.colorindex = 15;
range.font.bold = true;
}
for (int r = 0; r < dt.rows.count; r++)
{
for (int i = 0; i < dt.columns.count; i++)
{
worksheet.cells[r + 2, i + 1] = dt.rows[r][i];
}
rowread++;
percent = ((float)(100 * rowread)) / totalcount;
}
xlapp.visible = true;
}
//这样就行了,很实用的代码.
相关文章
- C#复制数组的两种方式及效率比较解读 10-24
- ASP.NET Identity用法解析 10-24
- ASP.NET MVC使用Identity增删改查用户介绍 10-24
- C语言中atoi函数模拟实现介绍 10-18
- .Net反向代理组件Yarp用法介绍 10-10
- .NET使用YARP通过编码方式配置域名转发实现反向代理教程 10-10