博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C# list导出Excel(二)
阅读量:5156 次
发布时间:2019-06-13

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

上篇写的那个那个导出Excel的方法导出Excel的时间慢,后面想了个别的方法,导出Excel的时间很快

1 public string CreateAdvExcel(IList
lt) 2 { 3 StringBuilder builder = new StringBuilder(); 4 Random rn = new Random(); 5 string name = rn.Next(9999) + ".xls"; 6 string path = Server.MapPath("\\Document\\" + name); 7 System.Reflection.PropertyInfo[] myPropertyInfo = lt.First().GetType().GetProperties(System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Instance); 8 int i = 0, j; 9 for (i = 0, j = myPropertyInfo.Length; i < j; i++)10 {11 System.Reflection.PropertyInfo pi = myPropertyInfo[i];12 string headname = pi.Name;//单元格头部13 builder.Append(headname);14 builder.Append("\t");15 }16 builder.Append("\n");17 foreach (DocAdvInfo t in lt)18 {19 if (lt == null)20 {21 continue;22 }23 for (i = 0, j = myPropertyInfo.Length; i < j; i++)24 {25 System.Reflection.PropertyInfo pi = myPropertyInfo[i];26 string str = string.Format("{0}", pi.GetValue(t, null)).Replace("\n", "");27 if (str == "")28 {29 builder.Append("\t");30 }31 else32 {33 builder.Append(str + "\t");//横向跳到另一个单元格34 }35 }36 builder.Append("\n");//换行37 }38 StreamWriter sw = new StreamWriter(path, false, System.Text.Encoding.GetEncoding("GB2312"));39 sw.Write(builder.ToString());//输出40 sw.Flush();41 sw.Close();

转载于:https://www.cnblogs.com/Jin-1007/archive/2012/04/24/2468129.html

你可能感兴趣的文章
Codeforces Round #277 (Div. 2)
查看>>
【更新】智能手机批量添加联系人
查看>>
NYOJ-128前缀式计算
查看>>
淡定,啊。数据唯一性
查看>>
深入理解 JavaScript 事件循环(一)— event loop
查看>>
Hive(7)-基本查询语句
查看>>
注意java的对象引用
查看>>
C++ 面向对象 类成员函数this指针
查看>>
NSPredicate的使用,超级强大
查看>>
自动分割mp3等音频视频文件的脚本
查看>>
判断字符串是否为空的注意事项
查看>>
布兰诗歌
查看>>
js编码
查看>>
Pycharm Error loading package list:Status: 403错误解决方法
查看>>
steps/train_sat.sh
查看>>
转:Linux设备树(Device Tree)机制
查看>>
iOS 组件化
查看>>
(转)Tomcat 8 安装和配置、优化
查看>>
(转)Linxu磁盘体系知识介绍及磁盘介绍
查看>>
tkinter布局
查看>>