在把table表格中的数据导出到Excel的时候,以科学计数法显示位数多的数字时怎么解决?
sbHtml.AppendFormat("<td> {0}</td>", data[i].IDcard.ToString());
sbHtml.AppendFormat("<td style='mso-number-format:\"@\"';>{0}</td>", data[i].IDcard.ToString());
public byte[] ExportToExcel(List<EnterpriseInfo> data)
{
var str = "A B C D E F";
str = str.Replace("\r\n", "");
string[] temp = str.Split(new char[] { '\t' }, StringSplitOptions.RemoveEmptyEntries);
var lstTitle = temp.ToList();
var sbHtml = new System.Text.StringBuilder();
sbHtml.Append("<table border='1' cellspacing='0' cellpadding='0'>");
sbHtml.Append("<tr>");
foreach (var item in lstTitle)
{
sbHtml.AppendFormat("<td style='font-size: 14px;text-align:center;background-color: #DCE0E2; font-weight:bold;' height='25'>{0}</td>", item);
}
sbHtml.Append("</tr>"); ////读取表中数据
for (int i = ; i < data.Count; i++)
{
sbHtml.Append("<tr>");
//sbHtml.AppendFormat("<td style='mso-number-format:\"@\"';>{0}</td>", i);
sbHtml.AppendFormat("<td style='mso-number-format:\"@\"';>{0}</td>", data[i].Unitname + "");
sbHtml.AppendFormat("<td style='mso-number-format:\"@\"';>{0}</td>", data[i].Unitprofile + "");
sbHtml.AppendFormat("<td style='mso-number-format:\"@\"';>{0}</td>", data[i].Industry + "");
sbHtml.AppendFormat("<td style='mso-number-format:\"@\"';>{0}</td>", data[i].Contactperson + "");
sbHtml.AppendFormat("<td style='mso-number-format:\"@\"';>{0}</td>", data[i].Phone + "");
sbHtml.AppendFormat("<td style='mso-number-format:\"@\"';>{0}</td>", data[i].Emailaddress + "");
//sbHtml.AppendFormat("<td style='mso-number-format:\"@\"';>{0}</td>", data[i].Registrationdate + "");
sbHtml.Append("</tr>");
} byte[] fileContents = System.Text.Encoding.UTF8.GetBytes(sbHtml.ToString()); return fileContents;
}
var test = Request["down"];
if (test == "Down")
{
return File(ExportToExcel(data), "application/ms-excel", "数据.xls");
}
<input type="hidden" value="" name="down" id="txttype" />
按钮事件
{
$("#txttype").val("Down");
document.getElementById('form1').action = "/Backstage/xxx/List";
document.getElementById("form1").submit();
$("#txttype").val("");
}
public static byte[] ExportDataTableToExcel(DataTable dt)
{
Workbook workbook = new Workbook();
Worksheet sheet = workbook.Worksheets[]; for (int i = ; i < dt.Columns.Count; i++)
{
sheet.Cells[, i].PutValue(dt.Columns[i].ColumnName);
}
for (int i = ; i < dt.Rows.Count; i++)
{
for (int ii = ; ii < dt.Columns.Count; ii++)
{
sheet.Cells[i+, ii].PutValue(dt.Rows[i][ii].ToString());
}
} workbook.Save("期间模板1.xlsx");
MemoryStream ms = workbook.SaveToStream();
return ms.ToArray();
} public static void createExcel()
{
Workbook wb = new Workbook();
Worksheet sheet = wb.Worksheets[];
//设置样式
//Style style = wb.CreateStyle();
//style.ForegroundColor = System.Drawing.Color.FromArgb(199, 214, 157); //前景色
//style.HorizontalAlignment = TextAlignmentType.Center; //水平线
//style.Pattern = BackgroundType.Solid; ////绑定样式
//sheet.Cells[0, 0].SetStyle(style);
//sheet.Cells[0, 1].SetStyle(style); //绑定数据
sheet.Cells[, ].PutValue("工号1"); //第一行,第一列
sheet.Cells[, ].PutValue("姓名"); //第一行,第2列 wb.SaveToStream(); wb.Save("期间模板1.xlsx");
}
public static byte[] ExportDataTableToExcel(List<model> list)
{
Workbook workbook = new Workbook();
Worksheet sheet = workbook.Worksheets[];
//string[] columns = {"A","B","C"};
string[] columns = {"B", "C" };// 应为A跳过,所以去掉
for (int i = ; i < columns.Length; i++)
{
sheet.Cells[, i].PutValue(columns[i]);
}
for (int i = ; i < list.Count; i++)
{
int bxl = ; //并行列
var modeps = list[i].GetType().GetProperties(); //获得该对象所有属性名
for (int ii = ; ii < modeps.Length; ii++)
{
var name = modeps[ii].Name; //获得属性名
if (name == "A")
{
bxl--;
continue;
}
bxl++;
var value = modeps[ii].GetValue(list[i]); //获得属性值
sheet.Cells[i+, bxl].PutValue(value);
}
}
workbook.Save("期间模板1.xlsx");
MemoryStream ms = workbook.SaveToStream();
return ms.ToArray();
}
在把table表格中的数据导出到Excel的时候,以科学计数法显示位数多的数字时怎么解决?的更多相关文章
- 将Datagridview中的数据导出至Excel中
首先添加一个模块ImportToExcel,并添加引用 然后导入命名空间: Imports Microsoft.Office.Interop Imports System.Da ...
- 如何使用免费控件将Word表格中的数据导入到Excel中
我通常使用MS Excel来存储和处理大量数据,但有时候经常会碰到一个问题—我需要的数据存储在word表格中,而不是在Excel中,这样处理起来非常麻烦,尤其是在数据比较庞大的时候, 这时我迫切地需要 ...
- 机房收费系统——在VB中将MSHFlexGrid控件中的数据导出到Excel
机房收费系统中,好多查询的窗体都包含同一个功能:将数据库中查询到的数据显示在MSHFlexGrid控件中,然后再把MSHFlexGrid控件中的数据导出到Excel表格中. 虽然之前做过学生信息管理系 ...
- Qt中将QTableView中的数据导出为Excel文件
如果你在做一个报表类的程序,可能将内容导出为Excel文件是一项必须的功能.之前使用MFC的时候我就写过一个类,用于将grid中的数据导出为Excel文件.在使用了QtSql模块后,我很容易的将这个类 ...
- WPF-将DataGrid控件中的数据导出到Excel
原文:WPF-将DataGrid控件中的数据导出到Excel 导出至Excel是非常常见,我们可以用很多类库,例如Aspose.NOPI.Interop,在这里我们使用微软自家的工具.我的WPF绑定的 ...
- 如何将存储在MongoDB数据库中的数据导出到Excel中?
将MongoDB数据库中的数据导出到Excel中,只需以下几个步骤: (1)首先,打开MongoDB安装目录下的bin文件夹,(C:\Program Files (x86)\MongoDB\Serve ...
- mysql导出csv文件excel打开后数字用科学计数法显示且低位变0的解决方法
Excel显示数字时,如果数字大于12位,它会自动转化为科学计数法:如果数字大于15位,它不仅用于科学技术费表示,还会只保留高15位,其他位都变0. Excel打开csv文件时,只要字段值都是数字,它 ...
- csv 中 数值被自动转换成科学计数法 的问题 excel打开后数字用科学计数法显示且低位变0的解决方法
保存在csv中的 013812345678,前面的0会被去掉,后面是科学计数法显示.保存成 col1,="013812345678" 即可. 注意,分隔符逗号后面直接接“=”等号. ...
- Asp.net网页中DataGridView数据导出到Excel
经过上网找资料,终于找到一种可以直接将GridView中数据导出到Excel文件的方法,归纳方法如下: 1. 注:其中的字符集格式若改为“GB2312”,导出的部分数据可能为乱码: 导出之前需要关闭分 ...
随机推荐
- Mysql Innodb存储引擎 insert 死锁分析
http://chenzhenianqing.cn/articles/1308.html
- mysql中间件amoeba实现mysql读写分离
Amoeba是一个以MySQL为底层数据存储,并相应用提供MySQL协议接口的proxy.它集中地响应应用的请求,根据用户事先设置的规则.将SQL请求发送到特定的数据库上运行.基于此能够实现负载均衡. ...
- Linux下Shell编程
Linux的shell编程 1.什么是shell? 当一个用户登录Linux系统之后,系统初始化程序init就为每个用户执行一个称为shell(外壳)的程序. shell就是一个命令行解释器,它为用户 ...
- 安装 openCV 2.4.10
近期试验了一下 ubuntu 12.06 (x86) 安装.openCV 安装脚本 最好的文章是 https://help.ubuntu.com/community/OpenCV. 它提供一个脚本( ...
- LeetCode 541. Reverse String II (反转字符串 II)
Given a string and an integer k, you need to reverse the first k characters for every 2k characters ...
- 从零讲Java,给你一条清晰地学习道路!该学什么就学什么!
从零讲JAVA ,给你一条 清晰地学习道路!该学什么就学什么! 1.计算机基础: 1.1数据机构基础: 主要学习:1. ...
- C++之内部类(内部类就是外部类的友元类,单向友元。只是内部类比友元类多了一点权限)
1. 内部类的概念 如果一个类定义在另一个类的内部,这个内部类就叫做内部类.注意此时这个内部类是一个独立的类,它不属于外部类,更不能通过外部类的对象去调用内部类.外部类对内部类没有任何优越的访问权限. ...
- Linux中grep命令的12个实践例子
grep是每个Linux发行版都预装的一个强有力的文件模式搜索工具.无论何种原因,如果你的系统没有预装它的话,你可以很容易的通过系统的包管理器来安装它(Debian/Ubuntu系中的apt-get和 ...
- bzoj1018
线段树分治+并查集 线段树本身就是分治结构,碰见这种带删除修改的题目是再合适不过的,我们对于每段修改区间在线段树上打标记,每次路过就进行修改,叶子结点表及答案,先把所有修改在线段树上标记,然后dfs就 ...
- 最全的C/C++入门到进阶的书籍推荐,你需要嘛?
编程是操作性很强的一门知识,看书少不了,但只有学习和实践相结合才能起到很好的效果,一种学习方法是看视频->看书->研究书中例子->自己做些东西->交流->看书. 研究经典 ...