下面的示例演示如何使用 Workbook.ExportToHtml 方法将工作表另存为 HTML 文件。若要指定导出选项,请创建 HtmlDocumentExporterOptions 类的实例,并将其作为参数传递给 ExportToHtml 方法。
Vb.Net
'创建一个Workbook工作簿对象.
Using workbook As New DevExpress.Spreadsheet.Workbook()
'从文件中加载Workbook工作簿
workbook.LoadDocument("D:\Document.xlsx", DevExpress.Spreadsheet.DocumentFormat.Xlsx)
' ...
Dim worksheet As DevExpress.SpreadsheetWorksheet = workbook.Worksheets("Grouping")
workbook.Worksheets.ActiveWorksheet = worksheet
Dim options As New DevExpress.XtraSpreadsheet.Export.HtmlDocumentExporterOptions()
' 指定文档中要导出为HTML的部分。
options.SheetIndex = worksheet.Index
options.Range = "B2:G7"
' 使用指定的选项将活动工作表导出为HTML流。
Using htmlStream As New FileStream("D:\OutputWorksheet.html", FileMode.Create)
workbook.ExportToHtml(htmlStream, options)
End Using
System.Diagnostics.Process.Start("D:\OutputWorksheet.html")
End Using
C# |
// 创建一个Workbook工作簿对象. using (DevExpress.Spreadsheet.Workbook workbook = new DevExpress.Spreadsheet.Workbook()) { // 从文件中加载Workbook工作簿 workbook.LoadDocument(@"D:\Document.xlsx", DevExpress.Spreadsheet.DocumentFormat.Xlsx); // ... DevExpress.SpreadsheetWorksheet worksheet = workbook.Worksheets["Grouping"]; workbook.Worksheets.ActiveWorksheet = worksheet; DevExpress.XtraSpreadsheet.Export.HtmlDocumentExporterOptions options = new DevExpress.XtraSpreadsheet.Export.HtmlDocumentExporterOptions(); // 指定文档中要导出为HTML的部分。 options.SheetIndex = worksheet.Index; options.Range = "B2:G7"; // 使用指定的选项将活动工作表导出为HTML流。 using (FileStream htmlStream = new FileStream(@"D:\OutputWorksheet.html", FileMode.Create)) { workbook.ExportToHtml(htmlStream, options); } System.Diagnostics.Process.Start(@"D:\OutputWorksheet.html"); } |
使用 Workbook.ExportToHtmlAsync 方法将工作簿异步导出为 HTML 格式。
重要
调用此方法时,请考虑以下事项:
下面的代码示例使用 CancellationToken 对象将加载的 XLSX 文档的第一个工作表异步导出为 HTML:
Vb.Net
Private Async Sub ConvertXlsx2PdfWithCancellation()
' 指定取消令牌。
Using source As New CancellationTokenSource(10000)
'创建一个Workbook工作簿对象.
Using workbook As New DevExpress.Spreadsheet.Workbook()
Try
'异步加载XLSX文件.
Await workbook.LoadDocumentAsync("D:\Document.xlsx", source.Token)
'异步将XLSX文件导出到html文件.
Await workbook.ExportToHtmlAsync("D:\Result.html",0, source.Token)
Catch e1 As OperationCanceledException
MessageBox.Show("Cancelled by timeout.")
End Try
End Using
End Using
End Sub
C# |
private async void ConvertXlsx2PdfWithCancellation() { // 指定取消令牌。 using (CancellationTokenSource source = new CancellationTokenSource(10000)) { // 创建一个Workbook工作簿对象. using (DevExpress.Spreadsheet.Workbook workbook = new DevExpress.Spreadsheet.Workbook()) { try { // 异步加载XLSX文件. await workbook.LoadDocumentAsync(@"D:\Document.xlsx", source.Token); // 异步将XLSX文件导出到html文件. await workbook.ExportToHtmlAsync(@"D:\Result.html",0, source.Token); } catch (OperationCanceledException e1) { MessageBox.Show("Cancelled by timeout."); } } } } |
工作簿的默认计算模式为“手动”。此模式意味着电子表格组件在生成 HTML 文件之前不会重新计算公式。在将工作簿导出到 HTML 之前,调用 Workbook.Calculate 或 Workbook.CalculateFull 方法计算工作簿中的所有公式。
Vb.Net |
'创建一个Workbook工作簿对象. Using workbook As New DevExpress.Spreadsheet.Workbook() '从文件中加载Workbook工作簿 workbook.LoadDocument("D:\Document.xlsx", DevExpress.Spreadsheet.DocumentFormat.Xlsx) ' ... '在导出PDF文件前,重新计算工作簿中所有的公式 workbook.Calculate() '导出workbook工作簿到HTML文件. workbook.ExportToHtml("D:\Output_Workbook.pdf") End Using |
C# |
// 创建一个Workbook工作簿对象. using (DevExpress.Spreadsheet.Workbook workbook = new DevExpress.Spreadsheet.Workbook()) { // 从文件中加载Workbook工作簿 workbook.LoadDocument(@"D:\Document.xlsx", DevExpress.Spreadsheet.DocumentFormat.Xlsx); // ... //在导出PDF文件前,重新计算工作簿中所有的公式 workbook.Calculate(); // 导出workbook工作簿到HTML文件. workbook.ExportToHtml(@"D:\Output_Workbook.pdf"); } |