Excellibrary文档

我在这里找到了许多建议使用ExcelLibrary来编辑excell文件,但我找不到任何文档。

http://code.google.com/p/excellibrary/

试试这个:

var workbook = Workbook.Load("spreadsheet.xls"); var worksheet = workbook.Worksheets[0]; // assuming only 1 worksheet var cells = worksheet.Cells; var dataTable = new DataTable("datatable"); // add columns dataTable.Columns.Add("column1"); dataTable.Columns.Add("column2"); ... // add rows for (int rowIndex = cells.FirstRowIndex + 1; rowIndex <= cells.LastRowIndex; rowIndex++) { var values = new List(); foreach(var cell in cells.GetRow(rowIndex)) { values.Add(cell.Value.StringValue); } dataTable.LoadDataRow(values.ToArray(), true); } 

它不是最漂亮的代码,但它返回一个DataTable 。 我建议您尽可能直接使用这些值,即。 而不是转换为DataTable直接读取值并跳过此转换步骤。

这个问题及其答案真的很古老。 任何人现在都在看这个 – 忘记ExcelLibrary。 NPOI现在是可行的方式,并且适用于.xls和.xlsx

https://npoi.codeplex.com/ – 从哪里获得C#下载
https://poi.apache.org/ – 我发现的最好的文档,即使它是Java版本。

 //create new xls file string file = "C:\newdoc.xls"; Workbook workbook = new Workbook(); Worksheet worksheet = new Worksheet("First Sheet"); worksheet.Cells[0, 1] = new Cell((short)1); worksheet.Cells[2, 0] = new Cell(9999999); worksheet.Cells[3, 3] = new Cell((decimal)3.45); worksheet.Cells[2, 2] = new Cell("Text string"); worksheet.Cells[2, 4] = new Cell("Second string"); worksheet.Cells[4, 0] = new Cell(32764.5, "#,##0.00"); worksheet.Cells[5, 1] = new Cell(DateTime.Now, @"YYYY-MM-DD"); worksheet.Cells.ColumnWidth[0, 1] = 3000; workbook.Worksheets.Add(worksheet); workbook.Save(file); // open xls file Workbook book = Workbook.Load(file); Worksheet sheet = book.Worksheets[0]; // traverse cells foreach (Pair, Cell> cell in sheet.Cells) { dgvCells[cell.Left.Right, cell.Left.Left].Value = cell.Right.Value; } // traverse rows by Index for (int rowIndex = sheet.Cells.FirstRowIndex; rowIndex <= sheet.Cells.LastRowIndex; rowIndex++) { Row row = sheet.Cells.GetRow(rowIndex); for (int colIndex = row.FirstColIndex; colIndex <= row.LastColIndex; colIndex++) { Cell cell = row.GetCell(colIndex); } } 

我不确定这是什么,但我认为操作Microsoft Office文档的首选方法是使用Open XML SDK 2.0 。