当前位置:百问九>生活百科>C#中如何将Listbox里面的内容保存到excel中

C#中如何将Listbox里面的内容保存到excel中

2024-07-02 03:36:51 编辑:zane 浏览量:583

C#中如何将Listbox里面的内容保存到excel中

哈哈,这个只能找我了,过程有点复杂,我研究了好几天,

1.你要下载一个.dll,网上很多的,Aspose.Excel.dll

这是因为空间商的服务器没有windows组件,就是说无法运行写入excel的操作,

但用了这个.dll,照样可以生成excel!

2.按照这个.dll的说明,调用其中的方法就行。

俺贴出成功例子一个如下:

提取dataset中的数据,生成excel文档的程序

DataSet ds = odd.Returnds(sel);

Excel excel = new Excel();

Worksheet sheet = excel.Worksheets;

sheet.Name = DateTime.Now.Year.ToString() + "年" + DateTime.Now.Month.ToString() + "月" + DateTime.Now.Day.ToString() + "日" + DateTime.Now.Hour.ToString() + "时" + "生成的订单表";//生成的excel表名

Cells cels = sheet.Cells;

cels[1, 1].PutValue("订餐时间");

cels[1, 2].PutValue("订餐人");

cels[1, 3].PutValue("邮编");

cels[1, 4].PutValue("地址");

cels[1, 5].PutValue("电话");

cels[1, 6].PutValue("留言");

cels[1, 7].PutValue("处理时间");

cels[1, 8].PutValue("菜品数");

cels[1, 9].PutValue("总价($)");//以上为第一列

for (int j = 2; j < ds.Tables.Rows.Count + 2; j++)

{

for (int k = 1; k < 8; k++)

{

cels[j, k].PutValue(ds.Tables.DefaultView[j - 2][k - 1].ToString());

}

string Cdate = ds.Tables.DefaultView[j - 2].ToString();

string selCtime = "select Price,countP,Ctime from tb_orderAll where Ctime=#" + Cdate + "#";

DataSet dsCt = odd.Returnds(selCtime);

double priceAll = 0;

int cPAll = 0;

for (int l = 0; l < dsCt.Tables.Rows.Count; l++)

{

priceAll += Convert.ToDouble(dsCt.Tables.DefaultView[l]["Price"]) * Convert.ToInt32(dsCt.Tables.DefaultView[l]["countP"]);

cPAll += Convert.ToInt32(dsCt.Tables.DefaultView[l]["countP"]);

}

cels[j, 8].PutValue(cPAll.ToString());

cels[j, 9].PutValue(priceAll.ToString());

}

//做到这0827,下一步循环取出ds中值到第二行以下

string excelN = DateTime.Now.ToString().Replace("/", "-").Replace(":", "-") + "order.xls"; //文件名不能包含:和/

excel.Save(Server.MapPath("..\\CreateExcel\\" + excelN));

版权声明:文章由 百问九 整理收集,来源于互联网或者用户投稿,如有侵权,请联系我们,我们会立即处理。如转载请保留本文链接:https://www.baiwen9.com/life/371074.html
热门文章
二维码