MVC C# - 将PdfPTable导出到Excel

时间:2015-02-19 04:41:42

标签: c# asp.net-mvc document export-to-excel

我正在努力下载PDF document。我使用PdfPTable创建了一个表。以下是我缩短的代码。

var document = new Document(PageSize.A4, 50, 50, 25, 25);                
var output = new MemoryStream();
var writer = PdfWriter.GetInstance(document, output);

document.Open();

PdfPTable table = new PdfPTable(2);
table.WidthPercentage = 80;

PdfPCell cell = new PdfPCell(new Phrase("Description", fntTableFontBold));
cell.HorizontalAlignment = Element.ALIGN_CENTER;
table.AddCell(cell);

......
document.Add(table);
document.Close();

Response.ContentType = "application/pdf";
Response.AddHeader("Content-Disposition", string.Format("attachment;filename={0}.pdf", "Journal"));
Response.BinaryWrite(output.ToArray());

一切正常。以上代码直接在浏览器中下载PDF。

现在我想添加下载到Excel功能,用户应该能够以Excel格式下载文档。

如何将上述代码转换为导出为.xls

1 个答案:

答案 0 :(得分:0)

您可以使用

Open Xml SDK

实现这一目标,因为这样可以在内存中创建整个内容。 另一个选择是:

  1. 通过启动Excel Interop流程创建Excel(需要安装Office)
  2. 使用JET或ACE引擎连接到excel文件作为数据库(取决于您是否需要支持x86或x64架构)
  3. 当然,您可以相应地更改响应对象,以通知浏览器您正在发送excel。