博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Aspose.Cells小实例
阅读量:6840 次
发布时间:2019-06-26

本文共 2913 字,大约阅读时间需要 9 分钟。

Aspose.Cells.Workbook workbook = new Aspose.Cells.Workbook();
Aspose.Cells.Worksheet sheet = workbook.Worksheets[0];
sheet.FreezePanes(1, 1, 1, 0);//冻结第一行
sheet.Cells["A1"].PutValue("ID");
sheet.Cells["B1"].PutValue("手机号码");
sheet.Cells["C1"].PutValue("姓名");
sheet.Cells["D1"].PutValue("出生年月");
sheet.Cells["E1"].PutValue("性别");
sheet.Cells["F1"].PutValue("订购份数");
sheet.Cells["G1"].PutValue("运营产品ID");
sheet.Cells["H1"].PutValue("订单状态");
sheet.Cells["I1"].PutValue("订单成功时间");
sheet.Cells["J1"].PutValue("批次ID");
sheet.Cells["K1"].PutValue("支付方式");
sheet.Cells["L1"].PutValue("错误代码");
///TODO
///设置列1为文本,因为这列全是数字而且很长,不处理会变成自然数了。
///这里需要注意Style是设置风格,而StyleFlag是开关,所以即使你设置了Style,没有打开对应的StyleFlag一样没用
Aspose.Cells.Style sc1 = workbook.Styles[workbook.Styles.Add()];
sc1.ShrinkToFit = true;
sc1.Number = 49;
Aspose.Cells.StyleFlag scf1 = new Aspose.Cells.StyleFlag();
scf1.ShrinkToFit = true;
scf1.NumberFormat = true;
Aspose.Cells.Column colomn1 = sheet.Cells.Columns[1];
colomn1.ApplyStyle(sc1, scf1);
dt =getDataTable();//得到DataTable
sheet.Cells.ImportDataTable(dt, false, "A2");//从A2开始填充数据
sheet.AutoFitColumns();//让各列自适应宽度,这个很有用。
workbook.Save(fileName, Aspose.Cells.FileFormatType.Excel2007Xlsx, Aspose.Cells.SaveType.OpenInExcel, response);//输出

很多时候输出的数据排序或者显示的列并不一定和DataTable得到的列排序数据完全一致,那么我们可以简单处理一下:
比如把上面的

引用内容 引用内容
///TODO
///设置列1为文本,因为这列全是数字而且很长,不处理会变成自然数了。
///这里需要注意Style是设置风格,而StyleFlag是开关,所以即使你设置了Style,没有打开对应的StyleFlag一样没用
Aspose.Cells.Style sc1 = workbook.Styles[workbook.Styles.Add()];
sc1.ShrinkToFit = true;
sc1.Number = 49;
Aspose.Cells.StyleFlag scf1 = new Aspose.Cells.StyleFlag();
scf1.ShrinkToFit = true;
scf1.NumberFormat = true;
Aspose.Cells.Column colomn1 = sheet.Cells.Columns[1];
colomn1.ApplyStyle(sc1, scf1);
dt =getDataTable();//得到DataTable

替换成:

引用内容 引用内容
DataTable dt1=getDataTable();
for (int i = 0; i < dt1.Rows.Count; i++)
{
sheet.Cells[(i + 1), 0].PutValue(dt1.Rows[i]["create_time"].ToString());
sheet.Cells[(i + 1), 1].PutValue(dt1.Rows[i]["holder_mobile"].ToString());
sheet.Cells[(i + 1), 2].PutValue(dt1.Rows[i]["rec_name"].ToString());
sheet.Cells[(i + 1), 3].PutValue(string.IsNullOrEmpty(dt1.Rows[i]["rec_sex"].ToString()) ? "" : (dt1.Rows[i]["rec_sex"].ToString() == "1") ? "男" : "女");
sheet.Cells[(i + 1), 4].PutValue(dt1.Rows[i]["rec_birthday"].ToString());
sheet.Cells[(i + 1), 5].PutValue(dt1.Rows[i]["base_product_code"].ToString());
sheet.Cells[(i + 1), 6].PutValue(dt1.Rows[i]["sell_price"].ToString());
sheet.Cells[(i + 1), 7].PutValue(dt1.Rows[i]["pay_count"].ToString());
sheet.Cells[(i + 1), 8].PutValue(dt1.Rows[i]["ins_policy"].ToString());
sheet.Cells[(i + 1), 9].PutValue(dt1.Rows[i]["ins_end_date"].ToString());
sheet.Cells[(i + 1), 10].PutValue(Rondi.Insu.Management.Utility.StateEnum.OrderFrom(dt1.Rows[i]["order_from"].ToString()));
sheet.Cells[(i + 1), 11].PutValue(Rondi.Insu.Management.Utility.StateEnum.OrderState(dt1.Rows[i]["order_state"].ToString()));
}

转载地址:http://dxwul.baihongyu.com/

你可能感兴趣的文章
每天一个linux命令(15):tail 命令
查看>>
天天看 高清影视 6.7.9.12 去广告精简 安装版
查看>>
论文阅读之: Hierarchical Object Detection with Deep Reinforcement Learning
查看>>
Linux下多网卡同网段多IP网络分流设定方法
查看>>
前端学HTTP之数据传输
查看>>
基于Log4j完成定时创建和删除日志的方法
查看>>
Win10系列:UWP界面布局基础9
查看>>
hdu 5730 Shell Necklace [分治fft | 多项式求逆]
查看>>
COCOS2D-X多层单点触摸分发处理方案?
查看>>
Headroom.js插件用法
查看>>
字典树简单知识及类实现
查看>>
编译安装spark 1.5.x(Building Spark)
查看>>
.Net写的比较清晰的接口
查看>>
我的前端进阶之路(面试题)
查看>>
浏览器允许的并发请求资源数是什么意思?
查看>>
英语之身体部位
查看>>
P1169 [ZJOI2007]棋盘制作
查看>>
C#软件开发实例.私人订制自己的屏幕截图工具(九)使用自己定义光标,QQ截图时的光标...
查看>>
【Mysql】经常使用指令之——忘记password
查看>>
POJ 3187 Backward Digit Sums
查看>>