我正在尝试找到一种用 c# 编写 excel 文件的简单方法,但是我找到的所有内容都感谢您的帮助。
问问题
5396 次
4 回答
1
于 2013-07-15T23:32:52.250 回答
1
如上所述使用epplus,它使它变得非常简单。这是我今天用它创建的电子表格的代码。
using (ExcelPackage pck = new ExcelPackage())
{
//Give the worksheet a name
ExcelWorksheet ws = pck.Workbook.Worksheets.Add("Inventory as of " + DateTime.Now.ToString("MM/dd/yyyy"));
//dt is a datable that i am turning into an excel document
ws.Cells["A1"].LoadFromDataTable(dt, true);
//Format the header columns(Color,Pattern,etc.)
using (ExcelRange rng = ws.Cells["A1:AA1"])
{
rng.Style.Font.Bold = true;
rng.Style.Fill.PatternType = ExcelFillStyle.Solid; //Set Pattern for the background to Solid
rng.Style.Fill.BackgroundColor.SetColor(Color.FromArgb(79, 129, 189)); //Set color to dark blue
rng.Style.Font.Color.SetColor(Color.White);
}
//End Format the header columns
//Give the file details(ie. filename, etc.)
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
Response.AddHeader("content-disposition", "attachment;filename=Inventory Report " + DateTime.Now.ToString("MM/dd/yyyy") + ".xlsx");
//Write the file
Response.BinaryWrite(pck.GetAsByteArray());
Response.End();
pck.Save();
}
于 2013-07-25T21:12:39.093 回答
0
您需要的是epplus,这将帮助您创建 2007+ excel 文件
与 2003 及以下不兼容
于 2013-07-15T23:21:47.087 回答
0
根据您要编写的 excel 文件的版本,没有真正简单的方法。如果您想使用 xls,那么除了使用 Excel 互操作之外,您将没有太多选择,而 Excel 互操作也需要安装 Excel。
较新的版本提供了更多选项,因为它只是后台的 XML。您可以自己选择如何创建它,您可以自己选择,也可以选择一些库或再次使用 Interop。
如果您只想显示没有任何样式的表格,有(公平)一种编写 csv 文件的方法,excel 可以很好地打开它(取决于您要在其中使用的数据类型)。
于 2013-07-15T23:23:13.973 回答