可否换种方式呢?给个建议:
用Aspose.Cells组件导参考:
http://blog.csdn.net/weiky626/article/details/7514637
用Aspose.Cells组件导参考:
http://blog.csdn.net/weiky626/article/details/7514637
解决方案 »
- 高分悬赏高手???谁能告诉我一个连接语句的含义???
- 请问程序池进程数最合适的数量应该设置成多少呢?
- 路过的朋友...请进来展示下你的才华
- System.Net.Mail发送邮件乱码的问题...
- javascirpt时间控件被datagrid挡住了,怎么解决?
- 图片显示时候,路径的问题,求教,急急急急急急急急急急
- 刚学asp.net 菜鸟问题
- 弱弱的问??
- 倾情奉献--P&C精品图书《.NET系统架构与开发》―――深入剖析.NET系统技术内幕--视频资料下载(全部是微软相关技术部门的技术主管讲
- 怎样获取一个Excel文件的Sheet表的所有名称?
- 用Jquery给Div里加一个“子Div”,为什么 “子Div”汉字会出现乱码?
- 关于把List转换成Json报错,百度无果。
/// <summary>
/// 将DataTable数据导出到Excel文件中(xls)
/// </summary>
/// <param name="dt"></param>
/// <param name="file"></param>
public static void TableToExcelForXLS(DataTable dt, string file)
{
HSSFWorkbook hssfworkbook = new HSSFWorkbook();
ISheet sheet = hssfworkbook.CreateSheet("Test"); //表头
IRow row = sheet.CreateRow(0);
for (int i = 0; i < dt.Columns.Count; i++)
{
ICell cell = row.CreateCell(i);
cell.SetCellValue(dt.Columns[i].ColumnName);
} //数据
for (int i = 0; i < dt.Rows.Count; i++)
{
IRow row1 = sheet.CreateRow(i + 1);
for (int j = 0; j < dt.Columns.Count; j++)
{
ICell cell = row1.CreateCell(j);
cell.SetCellValue(dt.Rows[i][j].ToString());
}
} //转为字节数组
MemoryStream stream = new MemoryStream();
hssfworkbook.Write(stream);
var buf = stream.ToArray(); //保存为Excel文件
using (FileStream fs = new FileStream(file, FileMode.Create, FileAccess.Write))
{
fs.Write(buf, 0, buf.Length);
fs.Flush();
}
}
你这个方法里面用了using了吧~http://msdn.microsoft.com/zh-cn/library/system.objectdisposedexception%28VS.80%29.aspx建议~
using(ms)
{
ms.ToArray();
}在方法内返回数组 不要返回MemberStream