我的解决方案中有一个Excel模板,日期(dd-mmm-yy),文本(左对齐)和数字(#,## 0.0)
应用了各种格式如果我现在使用代码将数据从SQL-Server
移动到此模板中,请使用以下代码:
DataTable dt
的输入参数提供给最终执行以下操作的方法:
string data = null;
int i = 0;
int j = 0;
for(i = 0; i <= dt.Rows.Count - 1; i++) {
for(j = 0; j <= dt.Columns.Count - 1; j++) {
data = dt.Rows[i].ItemArray[j].ToString();
xlWorkSheet.Cells[i + 1, j + 1] = data;
}
}
上述问题是所有数字和日期都被强制转换为字符串然后移入模板 - 因此模板格式化将会丢失。
有没有办法移动数据并保留模板的格式?
或者我是否需要将数据作为字符串移动,然后在数据移动后应用格式?
答案 0 :(得分:1)
如果您明确设置了应保留格式的单元格值:
xlWorkSheet.Cells[i + 1, j + 1].Value = data;