创build一个excel文件并自动扩展列宽

我有一个常规的HTML表格:

<table> <tr>hello</tr> <tr>world</tr> </table> 

我正在创build一个XLS文件:

 string randomname = @"C:\attachmentsfolder\" + System.IO.Path.GetRandomFileName() + ".xls"; System.IO.File.WriteAllText( randomname, message); 

当我打开生成的XLS文件时,我需要手动扩展列以查看长数据。

我的问题是:我怎样才能生成这个XLS文件,以便列已经适当的大小?

您可以使用EPPlus (开放源代码.NET Excel 2007+库)轻松完成此任务 ,并且您将拥有一个有效的Excel文件,以下是示例代码:

 public static void FitAndSaveToExcel(FileInfo excelFile, string sheetName) { ExcelPackage pack = new ExcelPackage(); ExcelWorksheet ws = pack.Workbook.Worksheets.Add(sheetName); ws.Cells[1, 1].Value = "Some Long text that needs fitting!"; ws.Cells[1, 2].Value = "Short one"; ws.Column(1).AutoFit(); pack.SaveAs(excelFile); } 

在Excel VBA中,您可以使用Rng.Columns.AutoFit实现您所寻找的效果。 我相信C#等价物是Rng.Columns.AutoFit();

但是,我同意Diodeus,你将不得不修复你的HTML第一。

您也可以使用第三方工具,如Aspose.Cells来创buildExcel文件。

我已经成功地在很多项目中使用了它。 它提供了您所需的自适应function。